隐藏操作而不禁用它

时间:2013-08-26 10:15:25

标签: python pyqt

我需要使用快捷方式控制我的GUI,因此我创建了一些操作来分配快捷方式。但是,我必须将操作放在菜单中(因此它们是可见的)才能启用它们。其中一些操作非常基本,比如更改选项卡,并且不值得出现在菜单中。

有没有办法隐藏它们而不禁用它们?

self.changeTabAction.setVisible(False)

此行隐藏了该操作,但禁用了该操作。

1 个答案:

答案 0 :(得分:2)

只需使用addAction将其添加到您的小部件即可。它将被添加到您的小部件,但它不会被显示。这是一个例子:

import sys
from PySide import QtGui, QtCore

class Window(QtGui.QWidget):
    def __init__(self):
        super(Window, self).__init__()
        action = QtGui.QAction(self)
        action.setShortcut('Ctrl+t')
        action.triggered.connect(self.on_triggered)
        self.addAction(action)

    def on_triggered(self):
        print('triggered')

app = QtGui.QApplication(sys.argv)
w = Window()
w.show()
sys.exit(app.exec_())