시그널과 슬롯을 이용한 간단한 예제를 작성해 보겠습니다.
QPushButton이라는 클래스를 가져와서 누르면 어떠한 동작을 하는 코드입니다.
import sys
from PyQt5.QtWidgets import *
def clicked_slot():
print('clicked')
app = QApplication(sys.argv)
btn = QPushButton("push")
btn.clicked.connect(clicked_slot)
btn.show()
app.exec_()
클릭했을 때 동작 즉 슬롯은 이벤트 루프를 생성하기 전에 작성해야 한다고 하네요.
def clicked_slot():
print('clicked')
클릭 했을때 'cliced'라는 프린트문이 실행되도록 함수(슬롯)을 작성했습니다.
btn = QPushButton("push")
"push"라고 적힌 푸쉬퍼튼을 만들어서 btn이라는 개체를 생성하고,
btn.clicked.connect(clicked_slot)
위에서 먼저 만든 슬롯(함수)와 연결합니다. 그리고
btn.show()
푸쉬버튼을 보여줍니다.
슬롯만 제외하고 이벤트 루프 (app = QApplication(sys.argv) ~~ app.exec_()) 안에서 이루어 집니다.
실행하면 이런 창이 하나 뜹니다.
push 버튼을 누르면 프린트문이 실행되는 것을 볼 수 있네요.
재밌네요.
비전공자에다 아무 관련이 없는 직무에 있는 40대 컴맹 아저씨가 처음으로 배우는 파이썬입니다. 이해하기 어려운 점이 많지만, 하나씩 배워 가는 과정이 재미있네요.
'파이썬(Python) > 파이썬 GUI(PyQt5 & tkinter)' 카테고리의 다른 글
PyQt5 - QPushButton, QLabel 만들기 (0) | 2020.12.05 |
---|---|
PyQt5 - 윈도우화면에 QPushButton 추가하기 (0) | 2020.12.04 |
PyQt5- QMainWindow 클래스를 이용한 간단한 윈도우 만들기 (2) | 2020.11.21 |
PyQt5 - PyQt 간단한 창 띄우기 (0) | 2020.11.19 |
PyQt5 - qt designer 파일 위치 (4) | 2020.11.18 |
댓글