在任何小部件上模拟 QKeyEvent InFocus
我想在当前聚焦的小部件上模拟QKeyEvent
。该小部件可能不属于我的应用程序,即使该小部件可能根本不是 Qt 部件。我现在只想在任何焦点小部件上模拟 QKeyEvent。
我试过 QApplication::postEvent(DG::Util::_desktopWidget, ev);
其中 DG::Util::_desktopWidget
是主桌面小部件,
QDesktopWidget* desktopWidget = new QDesktopWidget;
DG::Util::_desktopWidget = desktopWidget->screen(desktopWidget->primaryScreen());
但这不起作用。
I want to Simulate a QKeyEvent
on the Currently Focused Widget. That widget Might not belong to My Application even the widget may not be an Qt Widget at all. I just want to Simulate a QKeyEvent On Whatever Widget In Focus now.
I've tried QApplication::postEvent(DG::Util::_desktopWidget, ev);
Where DG::Util::_desktopWidget
is the Primary Desktop Widget
QDesktopWidget* desktopWidget = new QDesktopWidget;
DG::Util::_desktopWidget = desktopWidget->screen(desktopWidget->primaryScreen());
But This doesn't work.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
使用 Qt,您只能控制属于您的应用程序的小部件。
因此,您无法将 QKeyEvent 发送到非 Qt 应用程序或不同进程的 Qt 应用程序。
With Qt you can only control widgets belonging to your app.
Therefore you can't send QKeyEvent to non-Qt apps, or Qt apps which are different processes.