我需要知道在 main()
启动时是否按下了某个键(比如 r
)。请参阅:
int main(int argc, char *argv[])
{
if(R is pressed)
{} // Do a few things
// Do amazing stuff whatever happened
return a.exec();
}
但是我找不到一种方法可以适用于所有平台(win、mac、lin),我发现的唯一方法是针对 Windows 的一个技巧:Using GetKeyState()这不是很令人满意...
最佳答案
如果你想检查修饰键(shift、control、alt),你可以使用QGuiApplication::query KeyboardModifiers()
:
int main(int argc, char *argv[])
{
if(QGuiApplication::queryKeyboardModifiers().testFlag(Qt::ShiftModifier))
{} // Do a few things
// Do amazing stuff whatever happened
return a.exec();
}
关于Qt 在没有事件监听器的情况下获取应用程序状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25609976/