PyQt5 - PyQt 간단한 창 띄우기
본문 바로가기
파이썬(Python)/파이썬 GUI(PyQt5 & tkinter)

PyQt5 - PyQt 간단한 창 띄우기

by Squat Lee 2020. 11. 19.

창을 띄우는 간단한 코드 입니다.

 


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
반응형

댓글