Auf dieser Seite

Keys QML Type (Uncreatable)

Stellt die Schlüsselverwaltung für Items bereit. Mehr...

Import Statement: import QtQuick

Hinweis: Dies ist ein nicht erstellbarer Typ. Er kann in QML nicht instanziiert werden.

Eigenschaften

Signale

Ausführliche Beschreibung

Alle visuellen Primitive unterstützen die Tastenverarbeitung über den Typ „Keys attaching“. Tasten können über die Signaleigenschaften „onPressed“ und „onReleased“ verarbeitet werden.

Die Signaleigenschaften verfügen über einen „ KeyEvent “-Parameter namens „event“, der Details zum Ereignis enthält. Wenn ein Tastenereignis verarbeitet wird , sollte „event.accepted“ auf „true“ gesetzt werden, um zu verhindern, dass das Ereignis in der Elementhierarchie weiterverbreitet wird.

Anwendungsbeispiel

Das folgende Beispiel zeigt, wie der allgemeine „onPressed“-Handler verwendet werden kann, um auf eine bestimmte Taste zu prüfen; in diesem Fall die linke Cursortaste:

Item {
    anchors.fill: parent
    focus: true
    Keys.onPressed: (event)=> {
        if (event.key == Qt.Key_Left) {
            console.log("move left");
            event.accepted = true;
        }
    }
}

Einige Tasten können alternativ über spezifische Signal-Eigenschaften verarbeitet werden, zum Beispiel „onSelectPressed“. Diese Handler setzen „event.accepted “ automatisch auf „true“.

Item {
    anchors.fill: parent
    focus: true
    Keys.onLeftPressed: console.log("move left")
}

Eine Liste der Tastaturcodes finden Sie unter Qt.Key.

Prioritäten bei der Tastenverarbeitung

Der Anbindungstyp „Keys“ kann so konfiguriert werden, dass Tastenereignisse vor oder nach dem Element verarbeitet werden, an das er angebunden ist. Dies ermöglicht es, Ereignisse abzufangen, um das Standardverhalten eines Elements zu überschreiben, oder als Ausweichlösung für Tasten zu dienen, die vom Element nicht verarbeitet werden.

Wenn „ priority “ auf „Keys.BeforeItem“ (Standard) gesetzt ist, lautet die Reihenfolge der Verarbeitung von Tastenereignissen wie folgt:

  1. Elemente, die in forwardTo
  2. bestimmten Tastenbehandlungsroutinen, z. B. in den Handlern „onReturnPressed“
  3. onPressed- und onReleased-Handler
  4. Element-spezifische Tastenverarbeitung, z. B. die Tastenverarbeitung von „ TextInput “
  5. übergeordnetes Element

Wenn die Priorität auf „Keys.AfterItem“ gesetzt ist, lautet die Reihenfolge der Tastenereignisverarbeitung:

  1. Element-spezifische Tastenbehandlung, z. B. Tastenbehandlung von „ TextInput “
  2. In forwardTo
  3. spezifischen Tastenbehandlungsroutinen, z. B. „onReturnPressed“
  4. onPressed- und onReleased-Handler
  5. übergeordnetes Element

Wird das Ereignis während eines der oben genannten Schritte akzeptiert, wird die Tastenweitergabe beendet.

Siehe auch KeyEvent und KeyNavigation attached property.

Eigenschaftsdokumentation

enabled : bool

Dieses Flag aktiviert die Tastenbehandlung, wenn es auf „true“ gesetzt ist (Standard); andernfalls werden keine Tastenbehandlungsfunktionen aufgerufen.

forwardTo : list<Item> [read-only]

Diese Eigenschaft ermöglicht es, Tastendrücke, das Loslassen von Tasten und Tastatureingaben aus Eingabemethoden an andere Elemente weiterzuleiten. Dies kann nützlich sein, wenn Sie möchten, dass ein Element bestimmte Tasten (z. B. die Auf- und Ab-Pfeiltasten) verarbeitet und ein anderes Element andere Tasten (z. B. die Links- und Rechts-Pfeiltasten). Sobald ein Element, an das Tastenereignisse weitergeleitet wurden, das Ereignis akzeptiert, wird es nicht mehr an nachfolgende Elemente in der Liste weitergeleitet.

In diesem Beispiel werden Tastenereignisse an zwei Listen weitergeleitet:

Item {
    ListView {
        id: list1
        // ...
    }
    ListView {
        id: list2
        // ...
    }
    Keys.forwardTo: [list1, list2]
    focus: true
}

Um die Reihenfolge zu sehen, in der Ereignisse bei Verwendung von `forwardTo` empfangen werden, siehe Key Handling Priorities.

priority : enumeration

Diese Eigenschaft legt fest, ob die Schlüssel vor oder nach der eigenen Schlüsselverarbeitung des angehängten Elements verarbeitet werden.

KonstanteBeschreibung
Keys.BeforeItem(Standard) Die Tastenereignisse werden vor der normalen Tastenverarbeitung des Elements verarbeitet. Wird das Ereignis akzeptiert, wird es nicht an das Element weitergeleitet.
Keys.AfterItemVerarbeitet die Tastenereignisse nach der normalen Tastenverarbeitung des Elements. Wenn das Element das Tastenereignis akzeptiert, wird es nicht vom Handler der Eigenschaft „Keys attached“ verarbeitet.

Siehe auch „ Key Handling Priorities “.

Signal-Dokumentation

asteriskPressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Stern-Taste „*“ gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet onAsteriskPressed.

backPressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Zurück-Taste gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onBackPressed “.

backtabPressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Tastenkombination „Umschalt+Tab“ (Backtab) gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onBacktabPressed “.

callPressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Call-Taste gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onCallPressed “.

cancelPressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die „Abbrechen“-Taste gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der zugehörige Handler lautet „ onCancelPressed “.

context1Pressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Taste „Context1“ gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler ist „ onContext1Pressed “.

context2Pressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Taste „Context2“ gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onContext2Pressed “.

context3Pressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Taste „Context3“ gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onContext3Pressed “.

context4Pressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Taste „Context4“ gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onContext4Pressed “.

deletePressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Entf-Taste gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onDeletePressed “.

digit0Pressed(KeyEvent event)

Dieses Signal wird ausgegeben, wenn die Ziffer „0“ gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler ist „ onDigit0Pressed “.

digit1Pressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Ziffer „1“ gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler ist „ onDigit1Pressed “.

digit2Pressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Ziffer „2“ gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onDigit2Pressed “.

digit3Pressed(KeyEvent event)

Dieses Signal wird ausgegeben, wenn die Ziffer „3“ gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onDigit3Pressed “.

digit4Pressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Ziffer „4“ gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onDigit4Pressed “.

digit5Pressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Ziffer „5“ gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onDigit5Pressed “.

digit6Pressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Ziffer „6“ gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onDigit6Pressed “.

digit7Pressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Ziffer „7“ gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onDigit7Pressed “.

digit8Pressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Ziffer „8“ gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onDigit8Pressed “.

digit9Pressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Ziffer „9“ gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onDigit9Pressed “.

downPressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Abwärtspfeiltaste gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onDownPressed “.

enterPressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Eingabetaste gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onEnterPressed “.

escapePressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Escape-Taste gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onEscapePressed “.

flipPressed(KeyEvent event)

Dieses Signal wird ausgegeben, wenn die Flip-Taste gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onFlipPressed “.

hangupPressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Auflegen-Taste gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onHangupPressed “.

leftPressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Pfeiltaste nach links gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onLeftPressed “.

Dieses Signal wird ausgelöst, wenn die Menütaste gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler ist ` onMenuPressed`.

noPressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Taste „No“ gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onNoPressed “.

pressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn eine Taste gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onPressed “.

released(KeyEvent event)

Dieses Signal wird ausgelöst, wenn eine Taste losgelassen wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler ist „ onReleased “.

returnPressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Return-Taste gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onReturnPressed “.

rightPressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Pfeiltaste nach rechts gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onRightPressed “.

selectPressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Select-Taste gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der zugehörige Handler lautet „ onSelectPressed “.

shortcutOverride(KeyEvent event)

Dieses Signal wird ausgelöst, wenn eine Taste gedrückt wurde, die möglicherweise als Tastenkombination verwendet werden könnte. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Setzen Sie „ event.accepted “ auf „ true “, wenn Sie verhindern möchten, dass die gedrückte Taste von anderen Typen, wie z. B. „ Shortcut “, als Tastenkombination verwendet wird. Beispiel:

Item {
    id: escapeItem
    focus: true

    // Ensure that we get escape key press events first.
    Keys.onShortcutOverride: (event)=> event.accepted = (event.key === Qt.Key_Escape)

    Keys.onEscapePressed: {
        console.log("escapeItem is handling escape");
        // event.accepted is set to true by default for the specific key handlers
    }
}

Shortcut {
    sequence: "Escape"
    onActivated: console.log("Shortcut is handling escape")
}

Wie bei den anderen Signalen wird „ shortcutOverride “ für ein Element nur dann ausgelöst, wenn dieses Element „ activeFocus “ aufweist.

Hinweis: Der entsprechende Handler ist „ onShortcutOverride “.

Siehe auch „ Shortcut “.

spacePressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Leertaste gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onSpacePressed “.

tabPressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Tabulatortaste gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler ist „ onTabPressed “.

upPressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Aufwärtspfeiltaste gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onUpPressed “.

volumeDownPressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Taste „Lautstärke verringern“ gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onVolumeDownPressed “.

volumeUpPressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die Taste „Lauter“ gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onVolumeUpPressed “.

yesPressed(KeyEvent event)

Dieses Signal wird ausgelöst, wenn die „Ja“-Taste gedrückt wurde. Der Parameter „ event “ liefert Informationen zu diesem Ereignis.

Hinweis: Der entsprechende Handler lautet „ onYesPressed “.

© 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.