python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5選項(xiàng)卡控件QTabWidget詳細(xì)使用方法與實(shí)例
PyQt5選項(xiàng)卡控件QTabWidget簡(jiǎn)介
QTabWidget控件提供了一個(gè)選項(xiàng)卡和一個(gè)頁(yè)面區(qū)域,默認(rèn)顯示第一個(gè)選項(xiàng)卡的頁(yè)面,通過(guò)單擊各選項(xiàng)卡可以查看對(duì)應(yīng)的界面,如果在一個(gè)窗口中顯示的輸入字段很多,則可以對(duì)這些字段進(jìn)行拆分,分別放置在不同界面的選項(xiàng)卡中
QTabWidget類(lèi)中常用的方法
方法 | 描述 |
---|---|
addTab() | 將一個(gè)控件添加到Tab控件的選項(xiàng)卡中 |
insertTab() | 將一個(gè)Tab控件的選項(xiàng)卡插入到指定的位置 |
removeTab() | 根據(jù)指定的索引刪除Tab控件 |
setCurrentIndex() | 設(shè)置當(dāng)前可見(jiàn)的選項(xiàng)卡所在的索引 |
setCurrentWidget() | 設(shè)置當(dāng)前可見(jiàn)的界面 |
setTabBar() | 設(shè)置選項(xiàng)卡欄的小控件 |
setTabPosition() | 設(shè)置選項(xiàng)卡的位置 |
QTabWidget.North:顯示在頁(yè)面的上方 | |
QTabWidget.South:顯示在頁(yè)面的下方 | |
QTabWidget.West:顯示在頁(yè)面的左側(cè) | |
QTabWidget.East:顯示在頁(yè)面的右側(cè) | |
setTabText() | 定義Tab選項(xiàng)卡的顯示值 |
QTabWidget類(lèi)中的常用信號(hào)
信號(hào) | 描述 |
---|---|
currentChanged | 切換當(dāng)前頁(yè)面時(shí)發(fā)射該信號(hào) |
實(shí)例:QTabWidget的使用
import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from PyQt5.QtWidgets import * class TabDemo(QTabWidget): def __init__(self,parent=None): super(TabDemo, self).__init__(parent) #創(chuàng)建3個(gè)選項(xiàng)卡小控件窗口 self.tab1=QWidget() self.tab2=QWidget() self.tab3=QWidget() #將三個(gè)選項(xiàng)卡添加到頂層窗口中 self.addTab(self.tab1, "Tab 1") self.addTab(self.tab2, "Tab 2") self.addTab(self.tab3, "Tab 3") #每個(gè)選項(xiàng)卡自定義的內(nèi)容 self.tab1UI() self.tab2UI() self.tab3UI() def tab1UI(self): #表單布局 layout=QFormLayout() #添加姓名,地址的單行文本輸入框 layout.addRow('姓名',QLineEdit()) layout.addRow('地址',QLineEdit()) #設(shè)置選項(xiàng)卡的小標(biāo)題與布局方式 self.setTabText(0,'聯(lián)系方式') self.tab1.setLayout(layout) def tab2UI(self): #zhu表單布局,次水平布局 layout=QFormLayout() sex=QHBoxLayout() #水平布局添加單選按鈕 sex.addWidget(QRadioButton('男')) sex.addWidget(QRadioButton('女')) #表單布局添加控件 layout.addRow(QLabel('性別'),sex) layout.addRow('生日',QLineEdit()) #設(shè)置標(biāo)題與布局 self.setTabText(1,'個(gè)人詳細(xì)信息') self.tab2.setLayout(layout) def tab3UI(self): #水平布局 layout=QHBoxLayout() #添加控件到布局中 layout.addWidget(QLabel('科目')) layout.addWidget(QCheckBox('物理')) layout.addWidget(QCheckBox('高數(shù)')) #設(shè)置小標(biāo)題與布局方式 self.setTabText(2,'教育程度') self.tab3.setLayout(layout) if __name__ == '__main__': app=QApplication(sys.argv) demo=TabDemo() demo.show() sys.exit(app.exec_())
運(yùn)行效果圖如下
代碼分析
在這個(gè)例子中,一個(gè)表單的內(nèi)容分為3組,每一組小控件都顯示在不同的選項(xiàng)卡中,頂層窗口是一個(gè)QTabWidget控件,將三個(gè)選項(xiàng)卡添加進(jìn)去
#創(chuàng)建3個(gè)選項(xiàng)卡小控件窗口 self.tab1=QWidget() self.tab2=QWidget() self.tab3=QWidget() #將三個(gè)選項(xiàng)卡添加到頂層窗口中 self.addTab(self.tab1, "Tab 1") self.addTab(self.tab2, "Tab 2") self.addTab(self.tab3, "Tab 3")
使用表單布局管理器,每個(gè)選項(xiàng)卡顯示子表單的內(nèi)容
self.setTabText(0,'聯(lián)系方式') self.setTabText(1,'個(gè)人詳細(xì)信息') self.setTabText(2,'教育程度')
本文主要介紹了PyQt5選項(xiàng)卡控件QTabWidget詳細(xì)使用方法與實(shí)例,更多關(guān)于PyQt5控件使用的知識(shí)請(qǐng)查看下面的相關(guān)鏈接
- Python3使用PyQt5制作簡(jiǎn)單的畫(huà)板/手寫(xiě)板實(shí)例
- PyQt5 在label顯示的圖片中繪制矩形的方法
- python+pyqt5實(shí)現(xiàn)圖片批量縮放工具
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5信號(hào)與槽事件處理機(jī)制詳細(xì)介紹與實(shí)例解析
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5信號(hào)與槽多窗口數(shù)據(jù)傳遞詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5多線程中信號(hào)與槽的詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5結(jié)合Qt Designer創(chuàng)建信號(hào)與槽的詳細(xì)方法與實(shí)例
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5信號(hào)與槽的高級(jí)使用技巧裝飾器信號(hào)與槽詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5信號(hào)與槽的高級(jí)使用技巧(自定義信號(hào)與槽)詳解與實(shí)例
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5信號(hào)與槽基礎(chǔ)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5動(dòng)態(tài)(可拖動(dòng)控件大小)布局控件QSplitter詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5表單布局控件QFormLayout詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5布局控件QGridLayout詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5布局控件QVBoxLayout詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5布局控件QHBoxLayout詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5滾動(dòng)條控件QScrollBar詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5 MDI(多文檔窗口)QMidArea詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5樹(shù)形結(jié)構(gòu)控件QTreeWidget詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5表格控件QTableView詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5打印控件QPrinter詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5簡(jiǎn)單繪圖板實(shí)例與代碼分析
相關(guān)文章
Python使用Asyncio進(jìn)行web編程方法詳解
這篇文章主要為大家介紹了Python使用Asyncio進(jìn)行web編程的方法示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-08-08Python PyCharm如何進(jìn)行斷點(diǎn)調(diào)試
這篇文章主要介紹了Python PyCharm如何進(jìn)行斷點(diǎn)調(diào)試,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07基于python實(shí)現(xiàn)matlab filter函數(shù)過(guò)程詳解
這篇文章主要介紹了基于python實(shí)現(xiàn)matlab filter函數(shù)過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06Python-Selenium自動(dòng)化爬蟲(chóng)
本文介紹Python-Selenium自動(dòng)化爬蟲(chóng),Selenium是一個(gè)Web的自動(dòng)化測(cè)試工具,最初是為網(wǎng)站自動(dòng)化測(cè)試而開(kāi)發(fā)的,Selenium?可以直接運(yùn)行在瀏覽器上,它支持所有主流的瀏覽器,可以接收指令,讓瀏覽器自動(dòng)加載頁(yè)面,獲取需要的數(shù)據(jù),甚至頁(yè)面截屏,xiamian?neir?需要的朋友可以參考下2022-01-01談?wù)凱ython中的while循環(huán)語(yǔ)句
這篇文章主要給大家介紹了關(guān)于Python中while循環(huán)語(yǔ)句的相關(guān)資料,使用while循環(huán)語(yǔ)句可以解決程序中需要重復(fù)執(zhí)行的操作,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2019-03-03python opencv檢測(cè)目標(biāo)顏色的實(shí)例講解
下面小編就為大家分享一篇python opencv檢測(cè)目標(biāo)顏色的實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-04-04解決Python3 被PHP程序調(diào)用執(zhí)行返回亂碼的問(wèn)題
今天小編就為大家分享一篇解決Python3 被PHP程序調(diào)用執(zhí)行返回亂碼的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-02-02python?pycharm安裝第三方包失敗(使用pip安裝失敗)的解決方案
這篇文章主要給大家介紹了關(guān)于python?pycharm安裝第三方包失敗(使用pip安裝失敗)的解決方案,文中將可能遇到的幾種情況都進(jìn)行了分析并給出了詳細(xì)的解決方案,需要的朋友可以參考下2023-11-11