單選框具有兩種狀態:被選中或未被選中。
當用戶選擇或者取消選擇時,單選框就會發射一個stateChanged()信號
# QCheckBox 單選框
# 本例創建一個用來改變窗口標題的單選框
import sys
from PyQt4 import QtCore, QtGui
class MainWindow(QtGui.QWidget):
def __init__(self, parent = None):
QtGui.QWidget.__init__(self, parent)
self.setGeometry(300, 300, 350, 80)
self.setWindowTitle('Checkbox')
# 創建一個標簽信息為"Show title"的單選框
self.cb = QtGui.QCheckBox('show title', self)
self.cb.setFocusPolicy(QtCore.Qt.NoFocus) #默認情況下單選框接受聚焦,被聚焦的表現形式為單選框的標簽被一個薄薄的矩形所覆蓋。
self.cb.move(10, 10)
self.cb.toggle() # 初始狀態下我們設置了窗口的標題
# 將用戶定義的changeTitle()函數與單選框的stateChanged()信號連接起來。
self.connect(self.cb, QtCore.SIGNAL('stateChanged(int)'), self.changeTitle)
# 自定義的changeTitle()函數將重置窗口的標題
def changeTitle(self, value):
if self.cb.isChecked():
self.setWindowTitle('Checkbox')
else:
self.setWindowTitle('Unchecked')
app = QtGui.QApplication(sys.argv)
main = MainWindow()
main.show()
sys.exit(app.exec_())


