因此,要关闭标签页,我一直在使用QTabWidget.currentWidget()查找要关闭的标签页,但是现在,当我单击其他标签页上的关闭图标时,由于我的设置方式,它会关闭当前标签页
那么,如何找到关闭按钮所附的标签,以便我可以关闭正确的标签?
干杯
请处理void tabCloseRequested (int)
以获取已关闭请求的窗口小部件的当前索引。接下来,找到带有索引by的小部件QWidget QTabWidget.widget (self, int index)
并将其删除。或者,使用QTabWidget.removeTab (self, int index)
(但是不会删除页面小部件本身)。
import sys
from PyQt4 import QtGui
class QCustomTabWidget (QtGui.QTabWidget):
def __init__ (self, parent = None):
super(QCustomTabWidget, self).__init__(parent)
self.setTabsClosable(True)
self.tabCloseRequested.connect(self.closeTab)
for i in range(1, 10):
self.addTab(QtGui.QWidget(), 'Tab %d' % i)
def closeTab (self, currentIndex):
currentQWidget = self.widget(currentIndex)
currentQWidget.deleteLater()
self.removeTab(currentIndex)
myQApplication = QtGui.QApplication([])
myQCustomTabWidget = QCustomTabWidget()
myQCustomTabWidget.show()
sys.exit(myQApplication.exec_())
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句