파이썬 활용하여 체크박스 창 만들기
import sys
from PyQt5.QtWidgets import *
class MyWindow(QMainWindow):
def __init__(self):
super().__init__()
self.setupUI()
def setupUI(self):
self.setGeometry(800,200,300,300)
#체크박스를 사용하려면 QCheckBox 클래스의 인스턴스를 생성한다. QCheckBox 에 표시될 텍스트와 출력될 부모 위젯을 인자로 전달.
self.checkBox1= QCheckBox('5',self)
self.checkBox1.move(10,20)
self.checkBox1.resize(150,30)
self.checkBox1.stateChanged.connect(self.checkBoxState)
self.checkBox2= QCheckBox('20',self)
self.checkBox2.move(10,50)
self.checkBox2.resize(150,30)
self.checkBox2.stateChanged.connect(self.checkBoxState)
self.checkBox3 = QCheckBox('60',self)
self.checkBox3.move(10,80)
self.checkBox3.resize(150,30)
self.checkBox3.stateChanged.connect(self.checkBoxState)
self.statusBar = QStatusBar(self)
self.setStatusBar(self.statusBar)
def checkBoxState(self): #QCheckBox 위젯은 동시에 여러개가 선택될 수 있으므로 , if-elif-else 문을 사용하지 않는다.
msg=''
if self.checkBox1.isChecked()==True: #isChecked 메서드로 체크 여부를 파악할 수 있음
msg+='5'
if self.checkBox2.isChecked()==True:
msg+='20'
if self.checkBox3.isChecked()==True:
msg+='60'
self.statusBar.showMessage(msg)
if __name__ =='__main__':
app=QApplication(sys.argv)
mywindow = MyWindow()
mywindow.show()
app.exec_()
댓글
댓글 쓰기