问题标签 [qkeyevent]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
135 浏览

keypress - Qt模拟按键控制Linux中的SimpleScreenRecorder应用程序

我希望(在 Linux 中)通过模拟按键 CTRL+SHIFT+R 激活 SimpleScreenRecorder 来控制桌面录制。

SimpleScreenRecorder 图像

我试过这段代码:

但这不起作用。我可以将按键事件发送到 ui->lineEdit,但在这种情况下,不能将它发送到另一个正在运行的应用程序 SimpleScreenRecorder。

我怎么解决这个问题?谢谢。

0 投票
1 回答
292 浏览

c++ - 按下数字和数字键时无法在 Qt C++ 中处理 QKeyEvent

当用户用户按下键盘键时,我想做一些特定的事情。因为我的程序中有以下使用 qt 和 C++ 的代码:-

但是这段代码不起作用。但是这段代码可以:-

为什么会这样?

0 投票
2 回答
2125 浏览

python - 如何在 PyQt5、Python3 中更改空格键的行为

我使用 PyQt5 和 Python3 制作了一个用于工作的 ui。除了单击按钮之外,我还想通过按键盘上的特定键(例如空格键)来执行特定操作。我使用以下方法来做到这一点:

当我按下空格键时,它不是打印“空格”,而是按下 ui 中的焦点按钮。就像我点击返回一样。尽管按“W”键会按预期打印“w”。

我已经在 stackoverflow 和网络上的其他地方搜索过这里,但我发现没有什么真正有用的。我得到的最好的是这里的这个。但它使用 PyQt4.3 并将代码复制并粘贴到我的编辑器只是给我带来了一些错误。我认为这种方法很好,但我无法将其转移到 PyQt5。

0 投票
1 回答
1017 浏览

c++ - Qt keyPressEvent 处理程序仅在按下 ctrl、alt 或 shift 键时作出反应

我尝试使用keyPressEvent()函数获取任何键,但我在调试模式下发现只有在按下键“ shift/alt/ctrl ”时才会调用此函数。我试图按下textEdit框中的键。

提示管理器.h:

提示管理器.cpp:

提示管理器.ui:

#include <QKeyEvent>当然声明了,也写了setFocusPolicy(),但没有帮助。我正在使用带有对话框的 UI,所以不是MainWindows. 我想知道为什么这只检测到shift/alt/ctrl键。我正在使用 Qt 5.3。

0 投票
0 回答
547 浏览

qt - QKeySequence 'CTRL + PLUS' 快捷键不适用于德语键盘布局

我是 Qt 和高级编程的新手。在我的项目中,我有一个QKeySequence快捷键CTRL+ PLUS& CTRL+MINUS键。它们在数字PLUSMINUS键中工作正常,但如果在用于德语和意大利语键盘布局的 OEM PLUS 和 MINUS 键中使用,它们不会触发所需的操作。我在一个简单的程序中测试了它们KeyPressEvent()以打印调试消息,但它仍然没有触发操作。我使用nativeVirtualKey()并且能够打印调试消息。我使用 Qt 5.5.0 和 5.5.1 并使用 Windows 屏幕键盘对其进行测试。无论如何,在没有数字键的键盘上使用CTRL++快捷键。QKeySequence

Qt Creator 面临同样问题的另一个观察结果。增加字体大小的CTRL+PLUS快捷键在德语键盘中不起作用,对于丹麦语键盘,它是CTRL+MINUS不起作用。

QKeySequnce

这就是我使用的方式nativevirtualkey()

编辑 1:187 是VK 列表中 VirtualKey 十六进制值的整数值,根据Qt 中心论坛中的建议

0 投票
1 回答
1253 浏览

c++ - 如何从 qml Keys.onPressed 调用 qt keyPressEvent(QKeyEvent *event)

我有一个带有项目的 qml 窗口

我有一个 c++ 类

Keys.onPressed 里面需要做什么?我试过了

我已经在我的 c++ 类中尝试了一个公共 Q_INVOKABLE 函数(handleKeyPress),它带有我想从中调用keyPressEvent的参数(QKeyEvent * event) 。

在运行时,前者给出

“TypeError:对象 myclass 的属性‘keyPressEvent’不是函数”

后者

“错误:未知方法参数类型:QKeyEvent*”。

(然后我发现 qml 只能处理指向 QObject 的指针,并且 QKeyEvent 不继承自 QObject 但这并不能帮助我找到解决方案。)

那么从qml调用keyPressEvent的正确方法是什么?或者,如果这完全是错误的方法,那么如果我的班级需要 QKeyEvent 可以给我的信息,比如按下了哪个键等,那么正确的方法是什么?

0 投票
1 回答
1257 浏览

python - PyQt QTableView - 捕获 KeyDown / KeyPress 事件

我想Key DownQTableView. 我还想确定,如果它是按钮上的DEL按键,我QTableView的创建是这样的(来自QtCreator):

如果它实际上是一个 DEL-Keydown,我想删除当前选择的行。

QTableView有这个keyPressEvent需要的方法QKeyEvent- 我如何获得这个事件?

0 投票
1 回答
1642 浏览

c++ - QKeyPress - 在 Qt 中模拟按键

如何在 Qt 中模拟用户交互(按键事件)?

我尝试了相同的方法,但无法在 lineEdit 小部件上写入

交替

也没有成功。

我也尝试了以下方法,但没有得到任何结果。

请建议我错过了什么。

问候,萨扬

0 投票
1 回答
24 浏览

qml - 无法访问 QKeyEvent 对象上的一些所谓的公共属性

这里有一个公共属性列表:http: //doc.qt.io/qt-5/qkeyevent.html

我尝试访问它们:

我可以访问该matches属性,但不能访问其他属性。

为什么?

0 投票
1 回答
2296 浏览

python - 如何检测pyqt中的密钥释放

我想创建一个 PyQt5 窗口(Windows 操作系统),它可以识别按住 CTRL 按钮的按钮单击。我成功创建了一个可以识别 CTRL 键按下的处理程序,但它找不到我需要调用和关闭按钮单击事件的按钮的按下和释放。我做了很多搜索,但 PyQt5 的资源似乎很低。任何帮助表示赞赏:)