Keys QML Type
Bietet Schlüsselverwaltung für Items. Mehr...
Import Statement: | import QtQuick |
Eigenschaften
Signale
- asteriskPressed(KeyEvent event)
- backPressed(KeyEvent event)
- backtabPressed(KeyEvent event)
- callPressed(KeyEvent event)
- cancelPressed(KeyEvent event)
- context1Pressed(KeyEvent event)
- context2Pressed(KeyEvent event)
- context3Pressed(KeyEvent event)
- context4Pressed(KeyEvent event)
- deletePressed(KeyEvent event)
- digit0Pressed(KeyEvent event)
- digit1Pressed(KeyEvent event)
- digit2Pressed(KeyEvent event)
- digit3Pressed(KeyEvent event)
- digit4Pressed(KeyEvent event)
- digit5Pressed(KeyEvent event)
- digit6Pressed(KeyEvent event)
- digit7Pressed(KeyEvent event)
- digit8Pressed(KeyEvent event)
- digit9Pressed(KeyEvent event)
- downPressed(KeyEvent event)
- enterPressed(KeyEvent event)
- escapePressed(KeyEvent event)
- flipPressed(KeyEvent event)
- hangupPressed(KeyEvent event)
- leftPressed(KeyEvent event)
- menuPressed(KeyEvent event)
- noPressed(KeyEvent event)
- pressed(KeyEvent event)
- released(KeyEvent event)
- returnPressed(KeyEvent event)
- rightPressed(KeyEvent event)
- selectPressed(KeyEvent event)
- shortcutOverride(KeyEvent event)
- spacePressed(KeyEvent event)
- tabPressed(KeyEvent event)
- upPressed(KeyEvent event)
- volumeDownPressed(KeyEvent event)
- volumeUpPressed(KeyEvent event)
- yesPressed(KeyEvent event)
Ausführliche Beschreibung
Alle visuellen Primitive unterstützen die Handhabung von Tasten über die Eigenschaft Keys attached. Tasten können über die Signaleigenschaften onPressed und onReleased behandelt werden.
Die Signaleigenschaften haben einen KeyEvent -Parameter namens event, der Details zum Ereignis enthält. Wenn eine Taste behandelt wird, sollte event.accepted auf true gesetzt werden, um zu verhindern, dass sich das Ereignis in der Elementhierarchie nach oben ausbreitet.
Beispielverwendung
Das folgende Beispiel zeigt, wie der allgemeine onPressed-Handler verwendet werden kann, um auf eine bestimmte Taste zu testen; 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 Signaleigenschaften behandelt werden, zum Beispiel onSelectPressed. Diese Handler setzen event.accepted automatisch auf true.
Item { anchors.fill: parent focus: true Keys.onLeftPressed: console.log("move left") }
Siehe Qt.Key für die Liste der Tastaturcodes.
Prioritäten der Tastenbehandlung
Die Eigenschaft Keys attached kann so konfiguriert werden, dass Tastenereignisse vor oder nach dem Element behandelt werden, dem sie zugeordnet ist. Dadurch ist es möglich, Ereignisse abzufangen, um das Standardverhalten eines Elements außer Kraft zu setzen, oder als Fallback für Tasten zu fungieren, die vom Element nicht behandelt werden.
Wenn priority Keys.BeforeItem (Standard) ist, wird die Reihenfolge der Tastenereignisverarbeitung eingehalten:
- Elemente, die in
forwardTo
- spezifischen Tastenhandlern, z. B. onReturnPressed
- onPressed, onReleased Handler
- Element-spezifische Tastenbehandlung, z. B. TextInput key handling
- übergeordnetes Element
Wenn die Priorität Keys.AfterItem ist, ist die Reihenfolge der Verarbeitung von Tastenereignissen:
- Objektspezifische Tastenbehandlung, z. B. TextInput key handling
- Elemente, die in
forwardTo
- spezifische Tastenhandler, z. B. onReturnPressed
- onPressed, onReleased Handler
- übergeordnetes Element
Wenn das Ereignis während eines der oben genannten Schritte akzeptiert wird, wird die Weitergabe der Tasten gestoppt.
Siehe auch KeyEvent und KeyNavigation attached property.
Eigenschaft Dokumentation
enabled : bool |
Diese Flagge aktiviert die Tastenbehandlung, wenn sie auf true gesetzt ist (Standard); andernfalls werden keine Tastenbehandlungsfunktionen aufgerufen.
Diese Eigenschaft bietet eine Möglichkeit, Tastendrücke, Tastenfreigaben und Tastatureingaben, die von Eingabemethoden kommen, an andere Elemente weiterzuleiten. Dies kann nützlich sein, wenn ein Element einige Tasten (z. B. die Pfeiltasten nach oben und unten) und ein anderes Element andere Tasten (z. B. die Pfeiltasten nach links und rechts) behandeln soll. Sobald ein Element, an das Tasten weitergeleitet wurden, das Ereignis annimmt, wird es nicht mehr an spätere 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 }
Die Reihenfolge, in der die Ereignisse bei der Verwendung von forwardTo empfangen werden, ist unter Key Handling Priorities zu sehen.
priority : enumeration |
Diese Eigenschaft legt fest, ob die Tasten vor oder nach der Tastenbehandlung des angehängten Elements verarbeitet werden.
Konstante | Beschreibung |
---|---|
Keys.BeforeItem | (Standard) Die Schlüsselereignisse werden vor der normalen Verarbeitung der Elementtasten verarbeitet. Wenn das Ereignis akzeptiert wird, wird es nicht an das Element weitergegeben. |
Keys.AfterItem | verarbeitet die Tastenereignisse nach der normalen Tastenverarbeitung des Elements. Wenn das Element das Tastenereignis akzeptiert, wird es nicht von der angehängten Eigenschaftshandhabung Keys behandelt. |
Siehe auch Key Handling Priorities.
Signal Dokumentation
asteriskPressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn der Asterisk '*' gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onAsteriskPressed
.
backPressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Zurück-Taste gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onBackPressed
.
backtabPressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Tastenkombination Shift+Tab (Backtab) gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onBacktabPressed
.
callPressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Anruftaste gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onCallPressed
.
cancelPressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Abbruchtaste gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onCancelPressed
.
context1Pressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Taste Context1 gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onContext1Pressed
.
context2Pressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Taste Context2 gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onContext2Pressed
.
context3Pressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Taste Context3 gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onContext3Pressed
.
context4Pressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Taste Context4 gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onContext4Pressed
.
deletePressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Löschtaste gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onDeletePressed
.
digit0Pressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Ziffer "0" gedrückt wurde. Der Parameter event gibt Aufschluss über das Ereignis.
Hinweis: Der entsprechende Handler ist onDigit0Pressed
.
digit1Pressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Ziffer "1" gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onDigit1Pressed
.
digit2Pressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Ziffer "2" gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onDigit2Pressed
.
digit3Pressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Ziffer "3" gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onDigit3Pressed
.
digit4Pressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Ziffer "4" gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onDigit4Pressed
.
digit5Pressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Ziffer "5" gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onDigit5Pressed
.
digit6Pressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Ziffer "6" gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onDigit6Pressed
.
digit7Pressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Ziffer "7" gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onDigit7Pressed
.
digit8Pressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Ziffer "8" gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onDigit8Pressed
.
digit9Pressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Ziffer "9" gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onDigit9Pressed
.
downPressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn der Pfeil nach unten gedrückt wurde. Der Parameter event gibt Aufschluss über das Ereignis.
Hinweis: Der entsprechende Handler ist onDownPressed
.
enterPressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Eingabetaste gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onEnterPressed
.
escapePressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Escape-Taste gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onEscapePressed
.
flipPressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Umschalttaste gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onFlipPressed
.
hangupPressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Auflegen-Taste gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onHangupPressed
.
leftPressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn der Pfeil nach links gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onLeftPressed
.
menuPressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Menütaste gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onMenuPressed
.
noPressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Taste Nein gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onNoPressed
.
pressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn eine Taste gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onPressed
.
released(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn eine Taste losgelassen wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onReleased
.
returnPressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Return-Taste gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onReturnPressed
.
rightPressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn der Pfeil nach rechts gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onRightPressed
.
selectPressed(KeyEvent Ereignis) |
Dieses Signal wird ausgegeben, wenn die Auswahltaste gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onSelectPressed
.
shortcutOverride(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn eine Taste gedrückt wurde, die möglicherweise als Tastenkombination verwendet werden kann. Der Parameter event liefert Informationen über das Ereignis.
Setzen Sie event.accepted
auf true
, wenn Sie verhindern wollen, dass die gedrückte Taste von anderen Typen wie Shortcut als Tastenkombination verwendet werden kann. Ein 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
nur dann für ein Element ausgegeben, wenn dieses Element activeFocus hat.
Hinweis: Der entsprechende Handler ist onShortcutOverride
.
Siehe auch Shortcut.
spacePressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Leertaste gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onSpacePressed
.
tabPressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Tabulatortaste gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onTabPressed
.
upPressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn der Pfeil nach oben gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onUpPressed
.
volumeDownPressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Taste VolumeDown gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onVolumeDownPressed
.
volumeUpPressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Taste VolumeUp gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onVolumeUpPressed
.
yesPressed(KeyEvent event) |
Dieses Signal wird ausgegeben, wenn die Yes-Taste gedrückt wurde. Der Parameter event liefert Informationen über das Ereignis.
Hinweis: Der entsprechende Handler ist onYesPressed
.
© 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.