pyqt关闭未选择的标签

粗略的曼丹

因此,要关闭标签页,我一直在使用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] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章