目前,我正在编写一个编辑程序。我想为我的自定义函数分配三个快捷键(QKeySequence::Cut)、(QKeySequence::Copy)和(QKeySequence::and )。然而,它并不像我期望的那样起作用。
为了进行测试,我打开了来自QtCreator的“应用程序示例”。然后,我尝试禁用所有快捷键如下:
//cutAct->setShortcuts(QKeySequence::Cut);
connect(cutAct, SIGNAL(triggered()), textEdit, SLOT(cut()));
copyAct = new QAction(QIcon(":/images/copy.png"), tr("&Copy"), this);
//copyAct->setShortcuts(QKeySequence::Copy);
connect(copyAct, SIGNAL(triggered()), textEdit, SLOT(copy()));
pasteAct = new QAction(QIcon(":/images/paste.png"), tr("&Paste"), this);
//pasteAct->setShortcuts(QKeySequence::Paste);令人惊讶的是,快捷键仍然像以前一样工作。
另一个考验是:
那么我的结果是
欢迎任何建议。非常感谢。
发布于 2015-02-27 03:03:50
由于Sigil的代码,我找到了重写默认快捷方式的方法。
我使用以下代码:
在标题中的一个新动作:
QShortcut &m_Paste1;然后,在类的构造函数中:
m_Paste1(*(new QShortcut(QKeySequence(QKeySequence::Paste), this, 0, 0, Qt::WidgetShortcut))),最后,将其连接到您自己的插槽。
connect(&m_Paste1, SIGNAL(activated()), this, SLOT(paste()));https://stackoverflow.com/questions/28715948
复制相似问题