国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

python GUI庫圖形界面開發之PyQt5窗口布局控件QStackedWidget詳細使用方法

瀏覽:40日期:2022-08-05 17:14:00
PyQt5窗口布局控件QStackedWidget介紹

QTackedWidget是一個堆棧窗口控件,可以填充一些小控件,但是同一時間只有一個小控件可以顯示,QStackedWidget使用QStackedLayout布局。QSTackedWidget控件與QTabWidget類似,可以有效的顯示窗口的控件

QStackedWidget的使用實例

import sysfrom PyQt5.QtGui import *from PyQt5.QtCore import *from PyQt5.QtWidgets import *class StackedExample(QWidget): def __init__(self): super(StackedExample, self).__init__() #設置窗口初始位置和大小 self.setGeometry(300,50,10,10) self.setWindowTitle(’StackedWidget 例子’) #創建列表窗口,添加條目 self.leftlist=QListWidget() self.leftlist.insertItem(0,’聯系方式’) self.leftlist.insertItem(1,’個人信息’) self.leftlist.insertItem(2,’教育程度’) #創建三個小控件 self.stack1=QWidget() self.stack2=QWidget() self.stack3=QWidget() self.stack1UI() self.stack2UI() self.stack3UI() #在QStackedWidget對象中填充了三個子控件 self.stack=QStackedWidget(self) self.stack.addWidget(self.stack1) self.stack.addWidget(self.stack2) self.stack.addWidget(self.stack3) #水平布局,添加部件到布局中 HBox=QHBoxLayout() HBox.addWidget(self.leftlist) HBox.addWidget(self.stack) self.setLayout(HBox) self.leftlist.currentRowChanged.connect(self.display) def stack1UI(self): layout=QFormLayout() layout.addRow(’姓名’,QLineEdit()) layout.addRow(’地址’,QLineEdit()) self.stack1.setLayout(layout) def stack2UI(self): # zhu表單布局,次水平布局 layout = QFormLayout() sex = QHBoxLayout() # 水平布局添加單選按鈕 sex.addWidget(QRadioButton(’男’)) sex.addWidget(QRadioButton(’女’)) # 表單布局添加控件 layout.addRow(QLabel(’性別’), sex) layout.addRow(’生日’, QLineEdit()) self.stack2.setLayout(layout) def stack3UI(self): # 水平布局 layout = QHBoxLayout() # 添加控件到布局中 layout.addWidget(QLabel(’科目’)) layout.addWidget(QCheckBox(’物理’)) layout.addWidget(QCheckBox(’高數’)) self.stack3.setLayout(layout) def display(self,i): #設置當前可見的選項卡的索引 self.stack.setCurrentIndex(i)if __name__ == ’__main__’: app=QApplication(sys.argv) demo=StackedExample() demo.show() sys.exit(app.exec_())

運行效果如圖

python GUI庫圖形界面開發之PyQt5窗口布局控件QStackedWidget詳細使用方法

python GUI庫圖形界面開發之PyQt5窗口布局控件QStackedWidget詳細使用方法

python GUI庫圖形界面開發之PyQt5窗口布局控件QStackedWidget詳細使用方法

代碼分析

在這個例子中,在QStackedWidget對象中填充了三個子控件

self.stack1=QWidget() self.stack2=QWidget() self.stack3=QWidget() #在QStackedWidget對象中填充了三個子控件 self.stack=QStackedWidget(self) self.stack.addWidget(self.stack1) self.stack.addWidget(self.stack2) self.stack.addWidget(self.stack3)

每個子控件都可以有自己的布局,包含特定的表單元素,QStackedWidget控件不能在頁面之間進行切換,它與當前選中的QListWidget控件中的選項進行連接

#創建列表窗口,添加條目 self.leftlist=QListWidget() self.leftlist.insertItem(0,’聯系方式’) self.leftlist.insertItem(1,’個人信息’) self.leftlist.insertItem(2,’教育程度’) self.leftlist.currentRowChanged.connect(self.display)

將QListWidget的currentRowChanged信號與display()槽函數相關聯,從而改變堆疊控件的視圖

def display(self,i): #設置當前可見的選項卡的索引 self.stack.setCurrentIndex(i)

實際開發中,做界面設計,當然一般是借助Qt designer,方便而高效。

python GUI庫圖形界面開發之PyQt5窗口布局控件QStackedWidget詳細使用方法

在Qt designer,QStackedWidget是上圖這個東西,動手試試吧。

本文詳細介紹了PyQt5窗口布局控件QStackedWidget使用方法,靈活使用QStackedWidget控件對你的項目會有很大的提升,更多關于PyQt5窗口布局控件QStackedWidget使用方法請查看下面的相關鏈接

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 故城县| 旬阳县| 满城县| 葵青区| 屯留县| 河池市| 威海市| 黄山市| 渝北区| 娄烦县| 邯郸市| 青岛市| 阿拉善右旗| 巴林右旗| 徐汇区| 响水县| 通河县| 巩留县| 长岛县| 开阳县| 大关县| 犍为县| 沅江市| 普陀区| 章丘市| 社旗县| 三江| 五大连池市| 神木县| 天水市| 吉木乃县| 民丰县| 大竹县| 镇坪县| 镇沅| 赣州市| 祥云县| 蚌埠市| 青龙| 定远县| 汉沽区|