我现在正在使用 pyqt5 和 Qt 设计器来制作我的工作工具。
def figTabs(self):
l1 = QLabel("F Title")
b1 = QPlainTextEdit("a%d" % (self.Ftab.count() + 1))
l2 = QLabel("F Caption")
b2 = QPlainTextEdit("b%d" % (self.Ftab.count() + 1))
vbox = QVBoxLayout()
vbox.addWidget(l1)
vbox.addWidget(b1)
vbox.addWidget(l2)
vbox.addWidget(b2)
tab=QTabWidget()
tab.setLayout(vbox)
b1.setObjectName(f"fig_title_%d" % (self.Ftab.count() + 1))
b2.setObjectName(f"fig_caption_%d" % (self.Ftab.count() + 1))
self.Ftab.addTab(tab, "Fig %d" % (self.Ftab.count() + 1))
print(b1.objectName())
print(b2.objectName())
a = b1.toPlainText()
print(a)
#tabs=QTabWidget()
#self.setTabsClosable(True)
#tab.setTabsClosable(True)
#tab.tabCloseRequested.connect(lambda index: tab.removeTab(index))
当我点击带有标签和框的连接按钮时,这个选项卡会创建一个新选项卡。
在 QTabwidget 中,在 Qt Designer 中选中选项 tabsClosable 所以当我制作一个时它会出现关闭按钮 然后我尝试关闭它但没有成功
选项卡需要通过我在代码中添加的布局进行添加和关闭(因为我在 Qt Designer 中使用布局函数时遇到问题),此外,即使我为它们设置了所需的名称,我也无法调用该对象调用它们并使用其中的文本(就像通常使用 toPlainText 一样)
Нужно создать сигнал для закрытия вкладки
插槽
QtWidgets.QTabWidget.tabCloseRequested
class TabWidget (QtWidgets.QTabWidget):
def __init__ (self):
super(TabWidget, self).__init__()
self.setTabsClosable(True)
self.tabCloseRequested.connect(self.closeTab)
def closeTab(self, currentIndex):
self.removeTab(currentIndex)