PyQt5 튜토리얼-CheckBox
이 튜토리얼에서는 PyQt5에서 QCheckBox
를 배웁니다. QCheckBox
는 체크하거나 체크를 해제 할 수있는 옵션 버튼입니다. 사용자는 확인란 그룹에서 여러 옵션을 확인할 수 있습니다.
CheckBox
예제
import sys
from PyQt5.QtWidgets import QWidget, QLabel, QHBoxLayout, QCheckBox, QApplication
class basicWindow(QWidget):
def __init__(self):
super().__init__()
layout = QHBoxLayout()
self.setLayout(layout)
self.checkBoxA = QCheckBox("Select This.")
self.labelA = QLabel("Not slected.")
layout.addWidget(self.checkBoxA)
layout.addWidget(self.labelA)
self.setGeometry(200, 200, 300, 200)
self.setWindowTitle("CheckBox Example")
if __name__ == "__main__":
app = QApplication(sys.argv)
windowExample = basicWindow()
windowExample.show()
sys.exit(app.exec_())
어디,
self.checkBoxA = QCheckBox("Select This.")
self.checkBoxA
는 PyQt5에있는 QCheckBox
위젯의 인스턴스입니다. Select This.
라는 텍스트가 CheckBox
빈 사각형 옆에 표시됩니다.
CheckBox
이벤트
기본적으로 사용자는 확인란을 선택 또는 선택 해제해야하며, 상태 변경 신호에 따라 작업을 수행해야합니다.
import sys
from PyQt5.QtWidgets import QWidget, QLabel, QHBoxLayout, QCheckBox, QApplication
from PyQt5 import QtCore
class basicWindow(QWidget):
def __init__(self):
super().__init__()
layout = QHBoxLayout()
self.setLayout(layout)
self.checkBoxA = QCheckBox("Select This.")
self.labelA = QLabel("Not slected.")
self.checkBoxA.stateChanged.connect(self.checkBoxChangedAction)
layout.addWidget(self.checkBoxA)
layout.addWidget(self.labelA)
self.setGeometry(200, 200, 300, 200)
self.setWindowTitle("CheckBox Example")
def checkBoxChangedAction(self, state):
if QtCore.Qt.Checked == state:
self.labelA.setText("Selected.")
else:
self.labelA.setText("Not Selected.")
if __name__ == "__main__":
app = QApplication(sys.argv)
windowExample = basicWindow()
windowExample.show()
sys.exit(app.exec_())
self.checkBoxA.stateChanged.connect(self.checkBoxChangedAction)
슬롯 메소드 checkBoxChangeAction()
을 CheckBox stateChanged
신호에 연결합니다. 사용자가 체크 박스를 체크하거나 체크를 해제 할 때마다 checkBoxChangeAction()
이 호출됩니다.
def checkBoxChangedAction(self, state):
if QtCore.Qt.Checked == state:
self.labelA.setText("Selected.")
else:
self.labelA.setText("Not Selected.")
state
인수는 전달 된 CheckBox
의 상태이며 CheckBox
가 선택되면 labelA
텍스트가 Selected
로 변경되고, 선택되지 않으면 Not Selected
로 변경됩니다.
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn Facebook