pbj0812의 코딩 일기

[PYTHON] PyQt를 활용한 radio button + push button 어플 본문

ComputerLanguage_Program/PYTHON

[PYTHON] PyQt를 활용한 radio button + push button 어플

pbj0812 2020. 9. 24. 00:36

0. 목표

 - PyQt를 활용한 radio button + push button 어플

1. 플로우 차트

2. 실습

 1) library 호출

import sys
from PyQt5.QtWidgets import *

2) class 및 함수 생성

  (1) initUI

   - 버튼 생성

   - 버튼 위치 생성

  (2) buttonClick

   - 1번 라디오 버튼이 클릭된 상태면 1 출력, 2번 라디오 버튼이 클릭된 상태면 2 출력

   - 이를 push 버튼(btn)과 연결

class MyApp(QWidget):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        self.btn = QPushButton('Search')
        self.btn.clicked.connect(self.buttonClick)
        self.rbtn1 = QRadioButton('First Button', self)
        self.rbtn1.move(50, 50)
        self.rbtn1.setChecked(True)

        self.rbtn2 = QRadioButton(self)
        self.rbtn2.move(50, 70)
        self.rbtn2.setText('Second Button')

        grid = QGridLayout()
        grid.addWidget(self.btn, 4, 0, 1, 4)
        self.setLayout(grid)

        self.setWindowTitle('Twitter Crawler')
        self.setGeometry(100, 100, 400, 250)
        self.show()

    def buttonClick(self):
        if self.rbtn1.isChecked():
            print("1")
        elif self.rbtn2.isChecked():
            print("2")

 3) 메인

if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = MyApp()
    sys.exit(app.exec_())

3. 결과

 1) 실행

python test.py

  - 결과

 2) First Button 클릭된 상태로 Search 클릭

 3) 이어서 Second Button 클릭된 상태로 Search 클릭

4. 참고

 - 02.03 Button - QRadioButton

 - QRadioButton

Comments