pyqt - CheckBox(체크박스)

BANG·2020년 11월 26일
0

Qt

목록 보기
7/12

QCheckBox

QCheckBox(text, self)
text : 체크박스 옆에 텍스트 라벨

  • on(체크됨)/off(체크안됨)의 두 상태를 갖는 버튼을 제공

메서드설명
text()체크 박스의 라벨 텍스트를 반환
setText()체크 박스의 라벨 텍스트를 설정
isChecked()체크 박스의 상태를 반환(True/False)
checkState()체크 박스의 상태를 반환 (2/1/0)
toggle()체크 박스의 상태를 변경

시그널설명
pressed()체크 박스를 누를 때 신호를 발생
released()체크 박스에서 뗄 때 신호를 발생
clicked()체크 박스를 클릭할 때 신호를 발생
stateChanged()체크 박스의 상태가 바뀔 때 신호를 발생

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QCheckBox
from PyQt5.QtCore import Qt


class MyApp(QWidget):

    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        cb = QCheckBox('Show title', self)	# 체크박스 생성
        cb.move(20, 20)
        cb.toggle()	# on 상태로 바꾸기
        # default는 체크가 되어있지 않은 off 상태
        
        # 상태가 바뀔 때(signal) changeTitle 메서드에 연결(slot)
        cb.stateChanged.connect(self.changeTitle)

        self.setWindowTitle('QCheckBox')
        self.setGeometry(300, 300, 300, 200)
        self.show()

    def changeTitle(self, state):
        if state == Qt.Checked:
            self.setWindowTitle('QCheckBox')
        else:
            self.setWindowTitle(' ')


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

0개의 댓글