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 |
このプロパティは、このイベントに関与するキーの数を保持する。KeyEvent::text が空でない場合、これは単に文字列の長さである。
isAutoRepeat : bool |
このプロパティは、このイベントが自動繰り返しキーに由来するかどうかを保持する。
key : int |
このプロパティは、押された、または離されたキーのコードを保持します。
キーボードコードのリストについては、Qt.Key を参照してください。これらのコードは、基本的なウィンドウ・システムとは無関係です。この関数は、大文字と小文字を区別しないことに注意してください。この目的のためには、text プロパティを使用してください。
0またはQt.Key_Unknown の値は、そのイベントが既知のキーの結果ではないことを意味する。例えば、コンポーズシーケンスやキーボードマクロの結果であったり、キーイベント圧縮によるものであったりする。
modifiers : int |
このプロパティは、イベントが発生する直前に存在したキーボード修飾フラグを保持する。
これは、数値のビット単位の組み合わせ(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 |
このプロパティには、押されたキーのネイティブ・スキャン・コードが含まれます。このプロパティはQKeyEvent から変更されずに渡される。
QKeyEvent::nativeScanCode()も参照してください 。
text : string |
このプロパティは、キーが生成した 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(); } }
© 2025 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.