How can I get trigger signal for disabled QAction

2019-07-15 16:21发布

问题:

I have disabled QAction menu element:

QAction *item = new QAction(itemTitle);
item->setEnabled(false);

I use SLOT connection to call function after element was pressed, but it's works only for enabled elements:

QObject::connect(item, SIGNAL(triggered()), this, SLOT(func()));

My question is how can I trigger some function for disabled QAction element?

Qt 5.9.2, MSVC2017 64bit compiler

回答1:

setEnabled() property holds whether the widget is enabled.

In general an enabled widget handles keyboard and mouse events; a disabled widget does not. An exception is made with QAbstractButton.

When a widget is disable, all mouse and keyboard events are also disable.

More info : http://doc.qt.io/qt-4.8/qwidget.html#enabled-prop