對(duì)pyqt5中QTabWidget的相關(guān)操作詳解
首先,下面貼上designer處理的界面文件(轉(zhuǎn)換成py后的):
# -*- coding: utf-8 -*- # Form implementation generated from reading ui file 'TabWidget.ui' # # Created by: PyQt5 UI code generator 5.12.1 # # WARNING! All changes made in this file will be lost! from PyQt5 import QtCore, QtGui, QtWidgets class Ui_MainWindow(object): def setupUi(self, MainWindow): MainWindow.setObjectName("MainWindow") MainWindow.resize(800, 600) self.centralwidget = QtWidgets.QWidget(MainWindow) self.centralwidget.setObjectName("centralwidget") self.tabWidget = QtWidgets.QTabWidget(self.centralwidget) self.tabWidget.setGeometry(QtCore.QRect(110, 60, 521, 411)) self.tabWidget.setObjectName("tabWidget") self.tab = QtWidgets.QWidget() self.tab.setObjectName("tab") self.tabWidget.addTab(self.tab, "") self.tab_2 = QtWidgets.QWidget() self.tab_2.setObjectName("tab_2") self.tabWidget.addTab(self.tab_2, "") MainWindow.setCentralWidget(self.centralwidget) self.menubar = QtWidgets.QMenuBar(MainWindow) self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 26)) self.menubar.setObjectName("menubar") MainWindow.setMenuBar(self.menubar) self.statusbar = QtWidgets.QStatusBar(MainWindow) self.statusbar.setObjectName("statusbar") MainWindow.setStatusBar(self.statusbar) self.retranslateUi(MainWindow) self.tabWidget.setCurrentIndex(0) QtCore.QMetaObject.connectSlotsByName(MainWindow) def retranslateUi(self, MainWindow): _translate = QtCore.QCoreApplication.translate MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow")) self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab), _translate("MainWindow", "Tab 1")) self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_2), _translate("MainWindow", "Tab 2"))
然后,開始處理這個(gè)控件:
1、如何將控件最上面的小tab變成透明的?
# -*- coding: utf-8 -*- import sys from PyQt5.QtWidgets import QApplication, QMainWindow from TabWidget import Ui_MainWindow class ChangeTabColor(Ui_MainWindow, QMainWindow): def __init__(self): super(ChangeTabColor, self).__init__() self.setupUi(self) self.setFixedSize(self.width(), self.height()) self.tabWidget.setTabsClosable(True) str = "QTabBar::tab{background-color:rbg(255,255,255,0);}" self.tabWidget.setStyleSheet(str) def ui_main(): app = QApplication(sys.argv) w = ChangeTabColor() w.show() sys.exit(app.exec_()) if __name__ == '__main__': ui_main()
其中,下面這兩句話是將控件的上面的小tab變成透明的關(guān)鍵。
str = "QTabBar::tab{background-color:rbg(255,255,255,0);}" self.tabWidget.setStyleSheet(str)
2、如何在選中小tab的時(shí)候突出選中的部分(改變顏色)?
還是上面的代碼不變,其中str部分加上點(diǎn)內(nèi)容,改成如下語(yǔ)句:
str = "QTabBar::tab{background-color:rbg(255,255,255,0);}" + \ "QTabBar::tab:selected{color:red;background-color:rbg(255,200,255);} "
3、如何處理小tab的點(diǎn)擊事件?
在上面的代碼中加入一些語(yǔ)句即可實(shí)現(xiàn)。
def __init__(self): super(ChangeTabColor, self).__init__() self.setupUi(self) self.setFixedSize(self.width(), self.height()) self.tabWidget.setTabsClosable(True) str = "QTabBar::tab{background-color:rbg(255,255,255,0);}" + \ "QTabBar::tab:selected{color:red;background-color:rbg(255,200,255);} " self.tabWidget.setStyleSheet(str) self.tabWidget.currentChanged.connect(self.slot_small_tab) def slot_small_tab(self): if self.tabWidget.currentIndex() == 0: print('666') elif self.tabWidget.currentIndex() == 1: print('222') else: pass
未完待續(xù)。。。
以上這篇對(duì)pyqt5中QTabWidget的相關(guān)操作詳解就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- python GUI庫(kù)圖形界面開發(fā)之PyQt5表格控件QTableView詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開發(fā)之PyQt5打印控件QPrinter詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開發(fā)之PyQt5狀態(tài)欄控件QStatusBar詳細(xì)使用方法實(shí)例
- python GUI庫(kù)圖形界面開發(fā)之PyQt5計(jì)數(shù)器控件QSpinBox詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開發(fā)之PyQt5切換按鈕控件QPushButton詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開發(fā)之PyQt5多行文本框控件QTextEdit詳細(xì)使用方法實(shí)例
- python GUI庫(kù)圖形界面開發(fā)之PyQt5單選按鈕控件QRadioButton詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開發(fā)之PyQt5復(fù)選框控件QCheckBox詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開發(fā)之PyQt5滑塊條控件QSlider詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開發(fā)之PyQt5工具欄控件QToolBar的詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開發(fā)之PyQt5菜單欄控件QMenuBar的詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開發(fā)之PyQt5日期時(shí)間控件QDateTimeEdit詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開發(fā)之PyQt5下拉列表框控件QComboBox詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開發(fā)之PyQt5訪問(wèn)系統(tǒng)剪切板QClipboard類詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開發(fā)之PyQt5控件數(shù)據(jù)拖曳Drag與Drop詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開發(fā)之PyQt5圖片顯示控件QPixmap詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開發(fā)之PyQt5打開保存對(duì)話框QFileDialog詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開發(fā)之PyQt5輸入對(duì)話框QInputDialog詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開發(fā)之PyQt5選項(xiàng)卡控件QTabWidget詳細(xì)使用方法與實(shí)例
相關(guān)文章
基于python批量處理dat文件及科學(xué)計(jì)算方法詳解
今天小編就為大家分享一篇基于python批量處理dat文件及科學(xué)計(jì)算方法詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-05-05通過(guò)Python實(shí)現(xiàn)一個(gè)A/B測(cè)試詳解
A/B測(cè)試,通過(guò)分析兩種不同的營(yíng)銷策略,以此來(lái)選擇最佳的營(yíng)銷策略,可以高效地將流量轉(zhuǎn)化為銷售額。本文主要介紹了如何通過(guò)Python實(shí)現(xiàn)一個(gè)A/B測(cè)試,感興趣的可以了解一下2023-01-01解決Keras TensorFlow 混編中 trainable=False設(shè)置無(wú)效問(wèn)題
這篇文章主要介紹了解決Keras TensorFlow 混編中 trainable=False設(shè)置無(wú)效問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-06-06python3兩數(shù)相加的實(shí)現(xiàn)示例
這篇文章主要介紹了python3兩數(shù)相加的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04使用pickle存儲(chǔ)數(shù)據(jù)dump 和 load實(shí)例講解
今天小編就為大家分享一篇使用pickle存儲(chǔ)數(shù)據(jù)dump 和 load實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-12-12Python 打印自己設(shè)計(jì)的字體的實(shí)例講解
在本篇內(nèi)容里小編給大家分享的是一篇關(guān)于Python 打印自己設(shè)計(jì)的字體的實(shí)例講解內(nèi)容,有需要的朋友們可以參考學(xué)習(xí)下。2021-01-01Python實(shí)現(xiàn)將視頻按照時(shí)間維度剪切
這篇文章主要為大家詳細(xì)介紹了如何利用Python實(shí)現(xiàn)將視頻按照時(shí)間維度進(jìn)行剪切,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起了解一下2022-12-12使用python讀取csv文件快速插入數(shù)據(jù)庫(kù)的實(shí)例
今天小編就為大家分享一篇使用python讀取csv文件快速插入數(shù)據(jù)庫(kù)的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-06-06