PyQt 5 매일 배 워 야 할 창 닫 기
다음은 우리 가 예 에서 사용 한 QPushButton 컨트롤 의 구조 방법 입 니 다.
QPushButton(string text, QWidget parent = None)
text 인 자 는 단추 에 표 시 된 텍스트 입 니 다.parent 는 단추 컨트롤 을 어디 에 두 어야 합 니까?다음 예 에서 우 리 는 버튼 컨트롤 을 QWidget 에 넣 어야 합 니 다.프로그램의 창 컨트롤 은 계층 구 조 를 형성 할 수 있 습 니 다.이 단계 에서 대부분의 컨트롤 은 부모 컨트롤 이 있 고 부모 컨트롤 이 없 는 컨트롤 은 맨 위 창 입 니 다.
#!/usr/bin/python3
# -*- coding: utf-8 -*-
"""
PyQt5
。 , 。
:
:http://blog.csdn.net/weiaitaowang
:2016 7 29
"""
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton
from PyQt5.QtCore import QCoreApplication
class Example(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
btn = QPushButton(' ', self)
btn.clicked.connect(QCoreApplication.instance().quit)
btn.resize(btn.sizeHint())
btn.move(50, 50)
self.setGeometry(300, 300, 300, 220)
self.setWindowTitle(' ')
self.show()
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
이 예 에서 우 리 는 종료 단 추 를 만 들 었 습 니 다.단 추 를 누 르 면 프로그램 이 종 료 됩 니 다.
from PyQt5.QtCore import QCoreApplication
QtCore 모듈 의 QCoreApplication 대상 을 사용 해 야 합 니 다.
btn = QPushButton(' ', self)
단 추 를 만 들 었 습 니 다.단 추 는 QPushButton 류 의 인 스 턴 스 입 니 다.구조 함수 의 첫 번 째 매개 변 수 는 단추 의 탭 입 니 다.두 번 째 인 자 는 부모 창 컨트롤 입 니 다.부모 창 컨트롤 은 Example 컨트롤 입 니 다.이것 은 QWidget 에서 계승 하 는 클래스 입 니 다.
btn.clicked.connect(QCoreApplication.instance().quit)
이 이벤트 처리 시스템 은 PyQt 5 의 신호/슬롯 메커니즘 에 구축 되 어 있 습 니 다.이 단 추 를 누 르 면 신 호 를 보 내 고 quit()에 신 호 를 연결 하 는 방법 을 누 르 면 프로그램 이 종 료 됩 니 다.슬롯 은 Qt 의 슬롯 일 수도 있 고 Python 의 모든 호출 일 수도 있 습 니 다.QCoreApplication 은 주 이벤트 순환 을 포함 합 니 다.그것 은 모든 사건 을 처리 하고 배치한다.instance()방법 은 현재 인 스 턴 스 를 제공 합 니 다.주의,QCoreApplication 과 QApplication 을 구분 합 니 다.
송신기 와 수신 기:통신 의 두 대상 사이 에서 진행 합 니 다.전송 기 는 버튼 이 고 수신 기 는 응용 대상 입 니 다.
개념 이 좀 혼 란 스 러 우 니 여기 서 정리 하 자.
단추(btn)는 송신기 입 니 다.클릭(clicked)단 추 를 누 르 면 클릭 신 호 를 보 냅 니 다.홈 에 신호 연결(connect)을 누 르 십시오.
예 를 들 어 Qt 의 슬롯,QCoreApplication 에서 모든 Qt 이 벤트 를 처리 하고 스케줄 링 하 며 인 스 턴 스(이 인 스 턴 스(수신 기)의 quit 이 벤트 를 스케줄 링 합 니 다.
아마 이 뜻 일 거 야,천천히 이해 해!
프로그램 이 실 행 된 후 종료 단 추 를 누 르 면 프로그램 이 종 료 됩 니 다.
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Qt Designer와 PyQt5로 GUI인 MQTT 구독자를 만들 때의 메모직장의 건물이 신축되었으므로, 각 층의 분전반에 전력계를 설치해, 1곳에서 모니터링할 수 있는 시스템을 구축하려고 생각했다. 전력계는 을 참고로 제작했다. 시스템의 전체도 Windows10상에, 선인의 지혜를 참고로...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.