KeyEvent QML Type (Uncreatable)
重要なイベントに関する情報を提供します。詳細...
| Import Statement: | import QtQuick |
注:これは作成不可能な型です。QMLではインスタンス化できません。
プロパティ
- accepted : bool
- count : int
- isAutoRepeat : bool
- key : int
- modifiers : int
- nativeScanCode : quint32
- text : string
方法
- bool matches(StandardKey matchKey)
詳細説明
たとえば、以下はEnterキーが押されたときにItemのstateプロパティを変更します:
Item {
focus: true
Keys.onPressed: (event)=> { if (event.key == Qt.Key_Enter) state = 'ShowDetails'; }
}プロパティのドキュメント
accepted : bool
accepted を true に設定すると、キーイベントがアイテムの親に伝播されるのを防ぎます。
一般的に、アイテムがキーイベントに対して処理を行う場合は、そのイベントを受け入れるようにすべきです。そうすることで、祖先となるアイテムが同じイベントに反応してしまうことを防ぐことができます。
count : int [read-only]
このプロパティには、このイベントに関与するキーの数が格納されます。KeyEvent::text が空でない場合、これは単にその文字列の長さとなります。
isAutoRepeat : bool [read-only]
このプロパティは、このイベントが自動繰り返しキーに由来するかどうかに関係なく有効です。
key : int [read-only]
このプロパティには、押された、または離されたキーのコードが格納されます。
キーボードコードの一覧については、Qt.Key を参照してください。これらのコードは、基盤となるウィンドウシステムに依存しません。なお、この関数は大文字と小文字を区別しません。大文字・小文字の区別が必要な場合は、text プロパティを使用してください。
値が 0 またはQt.Key_Unknown の場合は、そのイベントが既知のキーによるものではないことを意味します。たとえば、コンポーズシーケンス、キーボードマクロ、またはキーイベントの圧縮によるものである可能性があります。
modifiers : int [read-only]
このプロパティには、イベントが発生する直前に存在していたキーボード修飾フラグが格納されます。
このプロパティには、数値のビット単位の組み合わせが含まれています(Qt::KeyboardModifier と同様です):
| 定数 | 説明 |
|---|---|
Qt.NoModifier | 修飾キーは押されていません。 |
Qt.ShiftModifier | キーボードの Shift キーが押されています。 |
Qt.ControlModifier | キーボードの Ctrl キーが押されています。 |
Qt.AltModifier | キーボードの Alt キーが押されている。 |
Qt.MetaModifier | キーボードの Meta キーが押されました。 |
Qt.KeypadModifier | テンキーのボタンが押されました。 |
Qt.GroupSwitchModifier | X11 のみ。キーボードの Mode_switch キーが押されました。 |
たとえば、Shift キーと Enter キーの組み合わせに反応させるには:
Item {
focus: true
Keys.onPressed: (event)=> {
if ((event.key == Qt.Key_Enter) && (event.modifiers & Qt.ShiftModifier))
doSomething();
}
}nativeScanCode : quint32 [read-only]
このプロパティには、押されたキーのネイティブスキャンコードが格納されています。これは、QKeyEvent から変更されることなく渡されます。
QKeyEvent::nativeScanCode()も参照してください 。
text : string [read-only]
このプロパティには、キーによって生成されたUnicodeテキストが格納されます。Shift、Control、Alt、Metaなどの修飾キーが押されている、または離されている場合、返されるテキストは空の文字列になることがあります。そのような場合、key には有効な値が格納されます
メソッドのドキュメント
bool matches(StandardKey matchKey)
キーイベントが指定された標準matchKey に一致する場合はtrue を返し、一致しない場合はfalse を返します。
Item {
focus: true
Keys.onPressed: (event)=> {
if (event.matches(StandardKey.Undo))
myModel.undo();
else if (event.matches(StandardKey.Redo))
myModel.redo();
}
}QKeySequence::StandardKeyも参照してください 。
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.