KeyEvent QML Type
キー・イベントに関する情報を提供する。詳細...
| Import Statement: | import QtQuick |
プロパティ
- 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(); } }
© 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.