web-dev-qa-db-ja.com

Qtでユーザーインタラクション(キー押下イベント)をシミュレートするにはどうすればよいですか?

Qtで「Enter」キーイベントをシミュレートする必要があります。これどうやってするの?

25
Andersson83

正解は次のとおりです。

_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
dnlcrl
QKeyEvent *event = new QKeyEvent ( QEvent::KeyPress, Qt::Key_Enter);
QCoreApplication::postEvent (receiver, event)
22
PiedPiper