PyQt5編程(29):在窗口中布局組件—將多個組件歸組

QGroupBox類可實現(xiàn)分組功能。 其繼承層次結構如下所示:
(QObject, QPaintDevice) - QWidget - QGroupBox
構造函數:
QGroupBox([QWidget parent = None])
QGroupBox( QString text[, QWidget parent = None])
父控件parent為可選參數。text為顯示在控件上部邊框的標題文字,可在標題文字的某個字母前加上“&”來指定快捷鍵。使用方法參見以下代碼:

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) # 設置radio1為選中狀態(tài)
window.show()
sys.exit(app.exec_())
QGroupBox類支持以下方法(只列出基本方法 - 完整方法列表,請參閱http://doc.qt.io/qt-5/qgroupbox.html):

setTitie (text) - 設置標題文字;
title( )-返回標題文字;
setAlignment(alignment) - 設置標題文字的水平對齊方式;
alignment( ) - 返回標題文字的水平對齊方式;
setcheckable(flag) - 如果flag為True,標題文字前有一選擇框。如果選擇框為選中狀態(tài),則QGroupBox組件可用;否則,不可用。
isCheckable( ) - 返回標題文字前是否有選擇框的標志。True:有;False:無。
setChecked( flag ) - 如果flag為True,標題文字前的選擇框為選中狀態(tài);否則,為非選中狀態(tài)。
isChecked( ) - 返回標題文字前選擇框的選中狀態(tài)。
setFlat( flag )- 如果flag為True,僅上邊框顯示;否則,四周邊框均顯示。
isFlat( ) - 如果僅上邊框顯示,返回True;否則,返回False。

QGroupBox的信號有:

clicked(Flagstatus) - 用鼠標點擊標題文字前的選擇框時產生。但用setChecked( )函數時不會產生;
toggled(Flagstatus) - 如果QGroupBox組件為可選擇狀態(tài),則狀態(tài)切換時產生此信號。
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容