如何防止关闭选项卡 QTabWidget? PyQT4

How to prevent a closing tab QTabWidget? PyQT4

使用此代码:

QtCore.QObject.connect(self.tabWidget, QtCore.SIGNAL("tabCloseRequested(int)"),
                       self.tabWidget.removeTab)

我可以关闭QTabWidget的任何选项卡,这些选项卡的名称是:

work_1

work_2

work_3

但我希望选项卡 work_1 永不关闭。

使用索引无效有两个原因:

这使得索引不断变化。

选项卡可以通过它们的小部件来识别,小部件可以通过它们的 objectName(或其他一些独特的属性)来识别:

        self.tabWidget.tabCloseRequested.connect(sef.removeTab)
        ...

    def removeTab(self, index):
        widget = self.tabWidget.widget(index)
        if widget is not None and widget.objectName() != 'work_1':
            self.tabWidget.removeTab(index)

或者更简单地说:

        if widget is not None and widget is not self.work_1:
            self.tabWidget.removeTab(index)