QGroupBox類可實(shí)現(xiàn)分組功能。 其繼承層次結(jié)構(gòu)如下所示:
(QObject, QPaintDevice) - QWidget - QGroupBox
構(gòu)造函數(shù):
QGroupBox([QWidget parent = None])
QGroupBox( QString text[, QWidget parent = None])
父控件parent為可選參數(shù)。text為顯示在控件上部邊框的標(biāo)題文字,可在標(biāo)題文字的某個(gè)字母前加上“&”來指定快捷鍵。使用方法參見以下代碼:
from PyQt5 import QtWidgets
import sys
app = QtWidgets.QApplication(sys.argv)
window = QtWidgets.QWidget()
window.setWindowTitle("QGroupBox")
window.resize(200, 80)
mainbox = QtWidgets.QVBoxLayout()
radio1 = QtWidgets.QRadioButton("&Yes")
radio2 = QtWidgets.QRadioButton("&No")
box = QtWidgets.QGroupBox("&Do you know Python?") # 創(chuàng)建QGroupBox
hbox = QtWidgets.QHBoxLayout() # 放到box中的QHBoxLayout容器
hbox.addWidget(radio1) # 添加要成組的組件radio1
hbox.addWidget(radio2) # 添加要成組的組件radio2
box.setLayout(hbox) # 將hbox布局到box
mainbox.addWidget(box) # 將box添加到主窗口
window.setLayout(mainbox) # 將mainbox布局到窗口
radio1.setChecked(True) # 設(shè)置radio1為選中狀態(tài)
window.show()
sys.exit(app.exec_())
QGroupBox類支持以下方法(只列出基本方法 - 完整方法列表,請參閱http://doc.qt.io/qt-5/qgroupbox.html):
setTitie (text) - 設(shè)置標(biāo)題文字;
title( )-返回標(biāo)題文字;
setAlignment(alignment) - 設(shè)置標(biāo)題文字的水平對齊方式;
alignment( ) - 返回標(biāo)題文字的水平對齊方式;
setcheckable(flag) - 如果flag為True,標(biāo)題文字前有一選擇框。如果選擇框?yàn)檫x中狀態(tài),則QGroupBox組件可用;否則,不可用。
isCheckable( ) - 返回標(biāo)題文字前是否有選擇框的標(biāo)志。True:有;False:無。
setChecked( flag ) - 如果flag為True,標(biāo)題文字前的選擇框?yàn)檫x中狀態(tài);否則,為非選中狀態(tài)。
isChecked( ) - 返回標(biāo)題文字前選擇框的選中狀態(tài)。
setFlat( flag )- 如果flag為True,僅上邊框顯示;否則,四周邊框均顯示。
isFlat( ) - 如果僅上邊框顯示,返回True;否則,返回False。
QGroupBox的信號有:
clicked(Flagstatus) - 用鼠標(biāo)點(diǎn)擊標(biāo)題文字前的選擇框時(shí)產(chǎn)生。但用setChecked( )函數(shù)時(shí)不會產(chǎn)生;
toggled(Flagstatus) - 如果QGroupBox組件為可選擇狀態(tài),則狀態(tài)切換時(shí)產(chǎn)生此信號。