このページでは

KeyEvent QML Type

キー・イベントに関する情報を提供する。詳細...

Import Statement: import QtQuick

プロパティ

方法

  • 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.GroupSwitchModifierX11のみ。キーボードの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.