안녕하세요 이번 포스팅은 QPushButton에 대한 내용입니다. 버튼을 클릭 시 이벤트를 발생 시키는 것이라고 생각하시면 됩니다. PyQt5 설치가 완료가 되셨다면 바로 진행하셔도 되는데 됩니다.
혹시 설치가 안되셨다면 아래 Link를 통해서 먼저 설치 방법을 체득하시고 오시면 더 도움이 되실 거 같습니다.
일단, Part #1에 기재된, Code는 아래와 같습니다. 복습한다는 느낌으로, 아래 주석과 함께, 같이 달아 드렸으니, 한번 읽고 진행하시면, 이해하는데 더 도움이 될 거라고 생각합니다.
====================================================
from PyQt5 import QtWidgets
from PyQt5.QtWidgets import QApplication, QMainWindow
import sys
====================================================
그럼 위 사항에 대해서, 충분히 학습하셨다면, 이제, Button을 활성하는 방법으로 넘어가도록 하겠습니다. 일단 Button을 활성하기 위해서는, 아래 두가지 항목이 필요합니다.
1. Button 에 대한, Characteristic(특성) - Button의 크기, Button에 기재된, TEXT 등2. Button을 클릭했을 때, 나타나는 결과값 or 작업. Ex) 클릭하게 되면, "XXX"를 표현해 달라.
이 두가가를 구현하기 위해, 아래와 같이 간단하게 추가적인 Code를 가미하도록 하겠습니다.
#1 Button의 Characteristic(특성) 관련 Code
====================================================
# button1이라는 변수에, GUI로 표현하는 Window창에 표현하겠다라는 선언을 합니다.
button1 = QtWidgets.QPushButton(test)
# button1 표면에 표시되는 Description에 대한, 내용을 추가합니다.
button1.setText("Click Button")
# button1를 클릭했을때, clicked1이라는 함수랑 연결하여, 결과값 표현 or 작업을 수행합니다.
button1.clicked.connect(clicked1)
====================================================
위 Code는, def Test1(): 아래 항목에 기재하셔야 합니다. 저는 label 관련 내용 및에 추가하였습니다.
추가한, Code는 아래와 같습니다. (빨간색으로 표시하였습니다.)
====================================================
from PyQt5 import QtWidgets
from PyQt5.QtWidgets import QApplication, QMainWindow
import sys
# button1이라는 변수에, GUI로 표현하는 Window창에 표현하겠다라는 선언을 합니다.
button1 = QtWidgets.QPushButton(test)
# button1 표면에 표시되는 Description에 대한, 내용을 추가합니다.
button1.setText("Click Button")
# button1를 클릭했을때, clicked1이라는 함수랑 연결하여, 결과값 표현 or 작업을 수행합니다.
button1.clicked.connect(clicked1)
====================================================
그리고, 입력 후, 결과 값을 출력을 하면, 아래와 같이 표현이 됩니다.
하지만, Click Button을 누른다고 해서, 아무것도 실행되지 않습니다. 그 이유는 제가 위에 말씀드렸던, 2번째 항목을 추가하지 않았기 때문입니다.
그럼, 2번째 항목인, "clicked1" 항수를 선언해 보도록 하겠습니다. 제가 작성한 Code는 아래와 같습니다.
#2 Button을 클릭했을 때, 나타나는 결과값 표현 or 작업 수행 관련 Code
====================================================
# clicked1 이라는 함수를 선언합니다.
def clicked1 ():
# clicked1이라는 함수 밑에, print method를 이용하여, button1을 클릭 시, "Click 했습니다." 를 output창에 표시하는 code를 입혓습니다.
print("Click 했습니다.")
====================================================
- 그럼, 위에 def clicked1 (): 항목까지 추가한 완성된 Code는 아래와 같습니다.
====================================================
from PyQt5 import QtWidgets
from PyQt5.QtWidgets import QApplication, QMainWindow
import sys
# clicked1 이라는 함수를 선언합니다.
def clicked1 ():
# clicked1이라는 함수 밑에, print method를 이용하여, button1을 클릭 시, "Click 했습니다." 를 output창에 표시하는 code를 입혓습니다.
print("Click 했습니다.")
# Test1라는 함수를 선언해준다.
def Test1():
# PyQt5 내장 모듈을 통해, 경로 및 관련 내용 지정한다.
view = QApplication(sys.argv)
test = QMainWindow()
# 창을 보여주는 위치와 Size를 지정한다.
test.setGeometry(300, 300, 500, 500)
# 창의 메인 Title을 지정한다.
test.setWindowTitle("Davey To be Programmer")
# 창에, 특정위치에, Script를 하나 추가한다.
script = QtWidgets.QLabel(test)
script.setText("English Chinese")
script.move(50,50)
# button1이라는 변수에, GUI로 표현하는 Window창에 표현하겠다라는 선언을 합니다.
button1 = QtWidgets.QPushButton(test)
# button1 표면에 표시되는 Description에 대한, 내용을 추가합니다.
button1.setText("Click Button")
# button1를 클릭했을때, clicked1이라는 함수랑 연결하여, 결과값 표현 or 작업을 수행합니다.
button1.clicked.connect(clicked1)
# Test1 함수를 실행한다.
Test1()
====================================================
위의 Code를 실행 후, Click Button이라는 이름의 Button을 클릭하면, Output 창에, "Click 했습니다." 라고, 표현이 되는 걸 확인 하실 수 있을 겁니다. (아래 Snap shot 참조 부탁 드립니다.)
이상입니다. 지금까지 Pyqt5의 QPushButton에 대한 내용으로 포스팅을 작성하였습니다. 여러번 보는 것보다 직업 해보는게 더 도움이 되는 거는 여러분도 아실겁니다. 한번 해보시고, 다 같이 성장하시죠. (저도 여러가지 경험을 통해, 직접 해보는게 얼마나 좋은지 매번 깨닫고 있습니다.)
제 Posting이 조금이나마 정보 전달에 도움이 되셨길 빌며, 되셨다면, 구독, 댓글, 공감 3종 세트 부탁 드립니다. 감사합니다.
[저작권이나, 권리를 침해한 사항이 있으면 언제든지 Comment 부탁 드립니다. 검토 후 수정 및 삭제 조치 하도록 하겠습니다. 그리고, 기재되는 내용은 개인적으로 습득한 내용이므로, 혹 오류가 발생할 수 있을 가능성이 있으므로, 기재된 내용은 참조용으로만 봐주시길 바랍니다. 게시물에, 오류가 있을때도, Comment 달아 주시면, 검증 결과를 통해, 수정하도록 하겠습니다.]
'파이썬 (Python) > 파이썬 GUI + PyQt5' 카테고리의 다른 글
파이썬 Python의 GUI 구현 PyQt5 Mouse Click 이벤트 구현하기 (0) | 2021.03.01 |
---|---|
파이썬 Python의 GUI 구현 PyQt5 Mouse Tracking 이벤트 구현하기 (2) | 2021.03.01 |
파이썬 Python의 GUI 구현 PyQt5 Designer 이용 방법 (0) | 2021.02.28 |
파이썬 Python GUI 구현 PyQt5 QComboBox 활용하기 (2) | 2021.02.28 |
파이썬 Python GUI 구현 PyQt5 설치하기 (5) | 2021.01.26 |
댓글