Qt:存储QKeySequence,从表单中提取它

时间:2017-11-07 18:54:00

标签: c++ forms qt key-bindings

我的问题涉及在开发物理应用程序时遇到的一些有趣问题。正在编写该程序用于某些特定的物理过程建模。科学家们更喜欢亲自设置控件,而不是使用内置控件。所以,我遇到的问题是:

  • 找到一种从表单中读取键序列的方法(键按键由用户按键绑定)
  • 找到将密钥序列存储在某个文件中的方法

第二个问题的解决方案可能如下:在字符串中以十六进制存储键序列的字节,并且只是读写。对我来说最有趣的是第一个问题......

1 个答案:

答案 0 :(得分:1)

如果我理解正确,QKeySequenceEdithttp://doc.qt.io/qt-5/qkeysequenceedit.html#details)和QKeySequencehttp://doc.qt.io/qt-5/qkeysequence.html#details)将解决您的问题。

QKeySequenceEdit是一个小部件,一旦小部件获得焦点,键序列就会启动,并且键的组合会一直持续到释放最后一个键为止。

您无需将密钥序列存储在文件中,因为QKeySequenceEdit本身具有返回keySequence()的函数QKeySequence

从' QKeySequence',您可以使用toString将所有密钥转换为字符串。