当前位置:   article > 正文

PyQt6 QTabWidget选项卡控件_pyqt6 选项卡

pyqt6 选项卡

​锋哥原创的PyQt6视频教程:

2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~共计37条视频,包括:2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~、第2讲 PyQt6库和工具库QTDesigner安装与配置、第3讲 PyQt6第一个程序HelloWorld实现等,UP主更多精彩视频,请关注UP账号。icon-default.png?t=N7T8https://www.bilibili.com/video/BV11C4y1P7fj/

TabWidget控件又称选项卡控件,它主要为其他控件提供分组,并且按照控件的分组来细分窗口的功能。

QTabWidget类的常用方法

方法说明
addTab()添加选项卡
inserTab()插入选项卡
removeTab()删除选项卡
currentWidget()获取当前选项卡
currentIndex()获取当前选项卡的索引
setCurrentIndex()设置当前选项卡的索引
setCurrentWidget()设置当前选项卡
setTabPosition()设置选项卡的标题位置
setTabsClosable()设置是否可以独立关闭选项卡
setTabText()设置选项卡标题文本
tabText()获取指定选项卡的标题文本

UI生成参考代码:

  1. # Form implementation generated from reading ui file 'QTabWidget选项卡控件.ui'
  2. #
  3. # Created by: PyQt6 UI code generator 6.4.2
  4. #
  5. # WARNING: Any manual changes made to this file will be lost when pyuic6 is
  6. # run again. Do not edit this file unless you know what you are doing.
  7. from PyQt6 import QtCore, QtGui, QtWidgets
  8. class Ui_Form(object):
  9. def setupUi(self, Form):
  10. Form.setObjectName("Form")
  11. Form.resize(647, 452)
  12. self.tabWidget = QtWidgets.QTabWidget(parent=Form)
  13. self.tabWidget.setGeometry(QtCore.QRect(110, 80, 431, 301))
  14. self.tabWidget.setTabPosition(QtWidgets.QTabWidget.TabPosition.North)
  15. self.tabWidget.setTabsClosable(True)
  16. self.tabWidget.setMovable(True)
  17. self.tabWidget.setTabBarAutoHide(False)
  18. self.tabWidget.setObjectName("tabWidget")
  19. self.tab = QtWidgets.QWidget()
  20. self.tab.setObjectName("tab")
  21. self.label = QtWidgets.QLabel(parent=self.tab)
  22. self.label.setGeometry(QtCore.QRect(60, 120, 121, 51))
  23. self.label.setObjectName("label")
  24. self.tabWidget.addTab(self.tab, "")
  25. self.tab_2 = QtWidgets.QWidget()
  26. self.tab_2.setObjectName("tab_2")
  27. self.label_2 = QtWidgets.QLabel(parent=self.tab_2)
  28. self.label_2.setGeometry(QtCore.QRect(80, 90, 111, 41))
  29. self.label_2.setObjectName("label_2")
  30. self.tabWidget.addTab(self.tab_2, "")
  31. self.tab_3 = QtWidgets.QWidget()
  32. self.tab_3.setObjectName("tab_3")
  33. self.label_3 = QtWidgets.QLabel(parent=self.tab_3)
  34. self.label_3.setGeometry(QtCore.QRect(140, 100, 91, 31))
  35. self.label_3.setObjectName("label_3")
  36. self.tabWidget.addTab(self.tab_3, "")
  37. self.retranslateUi(Form)
  38. self.tabWidget.setCurrentIndex(0)
  39. QtCore.QMetaObject.connectSlotsByName(Form)
  40. def retranslateUi(self, Form):
  41. _translate = QtCore.QCoreApplication.translate
  42. Form.setWindowTitle(_translate("Form", "Form"))
  43. self.label.setText(_translate("Form", "商品管理页面"))
  44. self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab), _translate("Form", "商品管理"))
  45. self.label_2.setText(_translate("Form", "商品类别管理内容"))
  46. self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_2), _translate("Form", "商品类别管理"))
  47. self.label_3.setText(_translate("Form", "会员管理内容"))
  48. self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_3), _translate("Form", "会员管理"))

Main测试代码:

  1. """
  2. python加载ui文件
  3. 作者 : 小锋老师
  4. 官网 : www.python222.com
  5. """
  6. import sys
  7. import time
  8. from PyQt6.QtGui import QValidator, QIntValidator, QIcon
  9. from PyQt6.QtWidgets import QApplication, QLabel, QLineEdit, QTextEdit, QComboBox, QFontComboBox, QTabWidget, QWidget
  10. from PyQt6 import uic, QtGui
  11. if __name__ == '__main__':
  12. app = QApplication(sys.argv)
  13. ui = uic.loadUi("./QTabWidget选项卡控件.ui")
  14. myTabWidget: QTabWidget = ui.tabWidget
  15. tab = QWidget()
  16. myTabWidget.addTab(tab, QIcon("other.png"), "测试")
  17. tab2 = QWidget()
  18. myTabWidget.insertTab(1, tab2, "测试2")
  19. myTabWidget.removeTab(2)
  20. print(myTabWidget.currentWidget(), myTabWidget.currentIndex())
  21. print(myTabWidget.tabText(2))
  22. ui.show()
  23. sys.exit(app.exec())

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/962210
推荐阅读
相关标签
  

闽ICP备14008679号