【发布时间】:2012-05-10 03:17:20
【问题描述】:
我正在尝试读取 JSON 配置文件,该文件指示哪些键命令映射到给定操作。例如:
...
{
"Action": "Quit",
"Combo" : "CTRL+Q"
},
...
从组合标记构造QKeySequence 很简单,但我需要监视QKeyEvents 以触发操作。请注意我必须监控QKeyEvents,因为它们也用于应用程序中的其他目的。即只监视 QKeySequences 的关键命令是不可接受的(如果可能的话)。
没有编写一个自定义解析器来为每个"Combo" 标记构造一个QKeyEvent 对象,是否可以将QkeyEvent 与QKeySequence 进行比较?例如:
QKeyEvent KeyCommandsHandler::toKeyEvent(QKeySequence sequence) {
//somehow convert to QKeyEvent
}
【问题讨论】:
-
明确一点,使用 QAction::setShortcut 不会做你想做的事?
标签: c++ qt key-events qkeysequence