如何防止关闭选项卡 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 永不关闭。
使用索引无效有两个原因:
选项卡可以通过以下代码动态移动:
self.tabWidget.setMovable (True)
这使得索引不断变化。
- 用户可以添加新标签。
选项卡可以通过它们的小部件来识别,小部件可以通过它们的 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)
使用此代码:
QtCore.QObject.connect(self.tabWidget, QtCore.SIGNAL("tabCloseRequested(int)"),
self.tabWidget.removeTab)
我可以关闭QTabWidget的任何选项卡,这些选项卡的名称是:
work_1
work_2
work_3
但我希望选项卡 work_1 永不关闭。
使用索引无效有两个原因:
选项卡可以通过以下代码动态移动:
self.tabWidget.setMovable (True)
这使得索引不断变化。
- 用户可以添加新标签。
选项卡可以通过它们的小部件来识别,小部件可以通过它们的 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)