English 中文(简体)
对Qt应用范围的“热钥匙”的答复
原标题:Respond to application-wide "hotkey" in Qt

我只想回答F12的钥匙,而不管谁是植被。

是否有一些容易的信号或我可以忽略的东西?

我想利用F12钥匙,把主要窗口的全插在/起飞上。

最佳回答
问题回答

为<代码>确定简短的背景 Qt:ApplicationShortcut 存在严重缺陷。 它不会在模式方言中工作。 因此,如果你希望全程适用全程适用,那么你就必须超越<条码>(指)方法。 另一种办法是为申请标安装活动过滤器,但我怀疑速度较慢,需要略微增加代码。 缩略语

class MyApplication : public QApplication
{
    // TODO: constructor etc.

protected:

bool MyApplication::notify(QObject *receiver, QEvent *event) override
{
    if (event->type() == QEvent::KeyPress)
    {
        auto keyEvent = static_cast<QKeyEvent*>(event);
        if (keyEvent->key() == Qt::Key_F12 && keyEvent->modifiers() == Qt::NoModifiers)
        {
            // TODO: do what you need to do
            return true;
        }  
    }
    return QApplication::notify(receiver, event);
}

}

如果你有一个“中央植被”,而所有其他植被都是儿童,那么你就可以简单地确定,作为QShortcut的植被理由。

(Python, qt5)

self.centralwidget = QtWidgets.QWidget(MainWindow)

QtWidgets.QShortcut(QtGui.QKeySequence("F12"), self.centralwidget, self.goFullScreen)

我补充说,这只是一个答案,因为捷径旗:Qt.ApplicationShortcut对我没有作用。





相关问题
Qt: Do events get processed in order?

If I had a class A, where one of its functions does: void A::func() { emit first_signal(); emit second_signal(); } Assuming that a class B has 2 slots, one connected to first_signal, and the ...

How to determine how much free space on a drive in Qt?

I m using Qt and want a platform-independent way of getting the available free disk space. I know in Linux I can use statfs and in Windows I can use GetDiskFreeSpaceEx(). I know boost has a way, ...

Drag & drop with .ui files

I m having big troubles with drag & drop. I ve created a new Qt Designer Form Class in which I have one QListWidget and one QWidget. Now I want to enable dragging & dropping between these two ...

Link errors on Snow Leopard

I creating a small desktop application using Qt and Poco on Mac OS X Snow Leopard. Qt works fine, but once I started linking with Poco I get the following warning: ld: warning: in /Developer/SDKs/...

Showing two windows in Qt4

My friend and I have each created parts of a GUI using Qt 4. They both work independently and I am trying to integrate his form with the my main window. As of now this is the code I am using to try ...

Qt equivalent of .NET data binding?

Is there an equivalent of .NET s data binding in Qt? I want to populate some combo boxes and other widgets with QStrings that refer to specific entities in my database. However, it would be cleaner ...

热门标签