창을 띄우는 간단한 코드 입니다.
import sys
from PyQt5.QtWidgets import *
app = QApplication(sys.argv)
label = QLabel("Hello, PyQt")
label.show()
print("Before event loop")
app.exec_()
print("After event loop")
"sys.argv"는 현재 실행되는 파이썬 파일의 경로를 나타냅니다.
"QApplication" 클래스를 "app"으로 생성한 후 "exe_" 메서드를 호출하는 순간 이벤트 루프가 생성됩니다.
쉽게 말해서 "exe_"는 창을 계속 띄워놓을 수 있도록 반복하는 즉 Loop가 발생한다는 얘기입니다.
실행하면 위의 그림과 같이 작은 창이 하나 뜨고, 레이블에는 Hello PyQt가 뜹니다.
'exec_' 가 끝나기 전이라
실행창에는 이렇게 표시가 됩니다.
창을 닫게 되면
다음 프린트문이 실행이 되네요.
결론은
"app = QApplication(sys.argv) ~ app.exec_()" 요 사이에 시그널과 슬롯을 처리하면 되겠네요.
PyQt에서는 버튼을 누르는 행동 등을 '시그널(signal)'이라고 하고, 이런 시그널이 발생했을때 호출되는 함수나 메서드를 '슬롯(slot)' 이라고 부른답니다.
728x90
반응형
'파이썬(Python) > 파이썬 GUI(PyQt5 & tkinter)' 카테고리의 다른 글
PyQt5 - QPushButton, QLabel 만들기 (0) | 2020.12.05 |
---|---|
PyQt5 - 윈도우화면에 QPushButton 추가하기 (0) | 2020.12.04 |
PyQt5- QMainWindow 클래스를 이용한 간단한 윈도우 만들기 (2) | 2020.11.21 |
PyQt5 - QPushButton 위젯을 이용하여 간단한 창 만들기 (0) | 2020.11.20 |
PyQt5 - qt designer 파일 위치 (4) | 2020.11.18 |
댓글