現在、C++ で単純な QML 長方形のキーボード フォーカスを設定しようとしています。サンプル:
Rectangle {
Keys.onUpPressed: {
console.log( 'Key up was pressed');
}
}
コントロールにフォーカスがある場合、ログにメッセージが表示されるはずです。C ++でインスタンスを見つけて、フォーカスプロパティを書き込もうとしました:
if ( true == QQmlProperty::write( pInstance, "focus", newFocus ) ) {
qDebug() << "Set new focus successful";
} else {
qDebug() << "Set new focus failed";
}
したがって、プロパティの書き込みは成功しました。しかし、コントロールにキーボード フォーカスがある場合、QML コードによって発生したメッセージを表示できません。どうすれば焦点を合わせることができるかについてのアイデア。この背後にある考え方は、起動時にどの要素がキーボード システムを取得するかを制御することです。
キム・カリング