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

问题描述 投票:0回答:2

我需要在Qt中模拟Enter按键事件。我该怎么做?

qt qt4 keyevent qkeyevent
2个回答
27
投票

正确答案可能是这样的:

QKeyEvent *event = new QKeyEvent ( QEvent::KeyPress, Qt::Key_Enter, Qt::NoModifier);
QCoreApplication::postEvent (receiver, event);

事实上,没有匹配的函数可以调用:

QtKeyEvent::QtKeyEvent(Type type, int key)

但是有:

QtKeyEvent::QtKeyEvent(Type type, int key, Qt::KeyboardModifiers modifiers)

23
投票
QKeyEvent *event = new QKeyEvent ( QEvent::KeyPress, Qt::Key_Enter);
QCoreApplication::postEvent (receiver, event)
© www.soinside.com 2019 - 2024. All rights reserved.