我正在尝试将几条快捷键连接到一个插槽,以便获取它们的键值并将其附加到一个变量中。类似于文本输入,所以我做了这样的事情:
button_1 = new QShortcut::QShortcut(QKeySequence("1"),this);
connect(button_1,SIGNAL(activated(QKeySequence)),this, SLOT(keybord_shortcuts(QKeySequence)));这是不正确的,因为activated()不会得到调用我的插槽keybord_shortcuts快捷方式的序列。
No such signal QShortcut::activated(QKeySequence)除了activated(),还有别的办法吗?欢迎任何帮助。
谢谢。
发布于 2014-10-07 12:32:14
是的,没有这样的信号activated(QKeySequence),您必须连接到信号activated():
connect(button_1, SIGNAL(activated()), this, SLOT(keybord_shortcuts()));但是,您可以使用sender()在插槽中获得真正的快捷方式。
void keybord_shortcuts()
{
QShortcut* shortcut = qobject_cast<QShortcut*>(sender());
QKeySequence seq = shortcut->key();
...
}https://stackoverflow.com/questions/26235279
复制相似问题