有没有可能在列表中获取由QTabWidget中的addTab(QWidget()
添加的所有选项卡小部件。
我们可以使用self.findChildren(QWidget)
,但它也会返回其内部的所有其他小部件,并且没有过滤它们的方法。
有没有可能在列表中获取由QTabWidget中的addTab(QWidget()
添加的所有选项卡小部件。
我们可以使用self.findChildren(QWidget)
,但它也会返回其内部的所有其他小部件,并且没有过滤它们的方法。
QTabWidget
有一个QWidget *widget(int index)
方法,该方法返回索引为index
的选项卡。使用此方法可以获取选项卡小部件。该类还具有一个int count();
,用于告诉您有多少个选项卡。import sys
from PyQt6.QtWidgets import QMainWindow, QApplication
from PyQt6 import QtWidgets
from PyQt6.uic import loadUi
# from PyQt6.QtWidgets import QTabWidget
# from PyQt6.QtCore import pyqtSignal as Signal, pyqtSlot as Slot
class MainUI(QMainWindow):
def __init__(self):
super(MainUI, self).__init__()
loadUi('D:/virtual1/AI-Project/AI_Main.ui', self)
# self.tabs = QTabWidget()
self.setCentralWidget(self.tabWidget)
self.tabWidget.currentChanged.connect(self.on_change)
def on_change(self):
num = self.tabWidget.currentIndex()
print('num = ', num)
if num == 0:
print('Index 0')
if num == 1:
print('Index 1')
if num == 2:
print('Index 2')
if num == 3:
print('Index 3')
if __name__ == "__main__":
# Allows You to Execute Code When the File Runs as a Script, but Not When It's Imported as a Module.
app = QtWidgets.QApplication(sys.argv)
window = MainUI()
window.show()
app.exec()