Auf dieser Seite

PointerHandler QML Type (Uncreatable)

Abstrakter Handler für Zeigerereignisse. Mehr...

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

Eigenschaften

Signale

  • canceled(eventPoint point)
  • grabChanged(PointerDevice::GrabTransition transition, eventPoint point)

Ausführliche Beschreibung

PointerHandler ist die Basisklasse für Eingabehandler (nicht als QML-Typ registriert) für Ereignisse von beliebigen Zeigegeräten (Touchscreen, Maus oder Grafiktablett).

Dokumentation der Eigenschaften

active : bool [read-only]

Dies gilt für ` true `, sobald dieser Eingabehandler die alleinige Verantwortung für die Verarbeitung eines oder mehrerer ` eventPoints` übernommen hat, indem er diese Punkte erfolgreich exklusiv erfasst hat. Das bedeutet, dass er seine Eigenschaften entsprechend den Bewegungen dieser `eventPoints` auf dem neuesten Stand hält und seine ` target ` (sofern vorhanden) aktiv bearbeitet.

cursorShape : Qt::CursorShape

Diese Eigenschaft legt die Cursorform fest, die angezeigt wird, wenn der Mauszeiger über das Element „ parent “ bewegt wird, während „ active “ auf „ true “ gesetzt ist.

Die verfügbaren Cursorformen sind:

  • Qt.ArrowCursor
  • Qt.UpArrowCursor
  • Qt.CrossCursor
  • Qt.WaitCursor
  • Qt.IBeamCursor
  • Qt.SizeVerCursor
  • Qt.SizeHorCursor
  • Qt.SizeBDiagCursor
  • Qt.SizeFDiagCursor
  • Qt.SizeAllCursor
  • Qt.LeererCursor
  • Qt.SplitVCursor
  • Qt.SplitHCursor
  • Qt.ZeigenderFinger-Cursor
  • Qt.VerbotenerCursor
  • Qt.Was-ist-das-Cursor
  • Qt.Beschäftigt-Cursor
  • Qt.Cursor mit offener Hand
  • Qt.Geschlossene-Hand-Cursor
  • Qt.Ziehen-Kopieren-Cursor
  • Qt.Ziehen-Verschieben-Cursor
  • Qt.DragLinkCursor

Der Standardwert ist nicht festgelegt, wodurch das Element „ cursor “ von „ parent “ angezeigt wird. Diese Eigenschaft kann auf den ursprünglichen Zustand zurückgesetzt werden, indem sie auf „undefined“ gesetzt wird.

Hinweis: Wenn diese Eigenschaft nicht festgelegt wurde oder auf „ undefined “ gesetzt wurde, wird beim Auslesen des Werts „ Qt.ArrowCursor “ zurückgegeben.

Siehe auch „ Qt::CursorShape“ , „ QQuickItem::cursor()“ und „ HoverHandler::cursorShape “.

dragThreshold : int

Die Entfernung in Pixeln, um die der Benutzer ein „ eventPoint “ ziehen muss, damit dies als Ziehgeste gewertet wird.

Der Standardwert hängt von der Plattform und der Bildschirmauflösung ab. Er kann auf den Standardwert zurückgesetzt werden, indem man ihn auf „undefined“ setzt. Das Verhalten beim Beginn einer Ziehgeste variiert je nach Handler.

enabled : bool

Wenn ein „ PointerHandler “ deaktiviert ist, werden alle Ereignisse abgelehnt und es werden keine Signale ausgegeben.

Wenn die Eigenschaft „ parent “ eines „ PointerHandler “ auf „ disabled “ gesetzt ist, wird der Handler ebenfalls effektiv deaktiviert, selbst wenn die Eigenschaft „ enabled “ weiterhin auf „ true “ gesetzt ist.

Hinweis: „ HoverHandler “ verhält sich anders: Weitere Informationen finden Sie in der Dokumentation zur Eigenschaft „ enabled “.

grabPermissions : flags

Diese Eigenschaft legt die Berechtigungen fest, wenn die Logik dieses Handlers beschließt, die exklusive Grab-Kontrolle zu übernehmen, oder wenn sie aufgefordert wird, die Übernahme oder Aufhebung der Grab-Kontrolle durch einen anderen Handler zu genehmigen.

KonstanteBeschreibung
PointerHandler.TakeOverForbiddenDieser Handler übernimmt weder die Grab-Berechtigung von einem Item oder Handler irgendeines Typs noch erteilt er diese.
PointerHandler.CanTakeOverFromHandlersOfSameTypeDieser Handler kann den exklusiven Zugriff von einem anderen Handler derselben Klasse übernehmen.
PointerHandler.CanTakeOverFromHandlersOfDifferentTypeDieser Handler kann den exklusiven Zugriff von jedem beliebigen Handler übernehmen.
PointerHandler.CanTakeOverFromItemsDieser Handler kann das exklusive „Grab“ von jedem beliebigen Item-Typ übernehmen.
PointerHandler.CanTakeOverFromAnythingDieser Handler kann das exklusive „Grab“ von jedem beliebigen Item- oder Handler-Typ übernehmen.
PointerHandler.ApprovesTakeOverByHandlersOfSameTypeDieser Handler erteilt einem anderen Handler derselben Klasse die Berechtigung, den Zugriff zu übernehmen.
PointerHandler.ApprovesTakeOverByHandlersOfDifferentTypeDieser Handler erteilt jedem beliebigen Handler die Erlaubnis, die exklusive Kontrolle zu übernehmen.
PointerHandler.ApprovesTakeOverByItemsDieser Handler erteilt jedem beliebigen Item die Erlaubnis, den „Grab“ zu übernehmen.
PointerHandler.ApprovesCancellationDieser Handler lässt zu, dass sein „Grab“ auf null gesetzt wird.
PointerHandler.ApprovesTakeOverByAnythingDieser Handler erteilt jedem beliebigen Item- oder Handler-Typ die Erlaubnis, den „Grab“ zu übernehmen.

Die Standardeinstellung ist „ PointerHandler.CanTakeOverFromItems | PointerHandler.CanTakeOverFromHandlersOfDifferentType | PointerHandler.ApprovesTakeOverByAnything “, was die meisten Übernahme-Szenarien zulässt, aber beispielsweise verhindert, dass sich zwei „PinchHandler“ um dieselben Berührungspunkte streiten.

margin : real

Der Randbereich außerhalb der Grenzen des „ parent “-Elements, innerhalb dessen ein „ eventPoint “ diesen Handler auslösen kann. Bei einer „ PinchHandler “, bei der der „ target “ gleichzeitig der „ parent “ ist, empfiehlt es sich beispielsweise, diesen Wert auf mindestens die Hälfte der Breite eines typischen Benutzerfingers festzulegen, damit die Pinch-Geste auch dann noch möglich ist, wenn der „ parent “ auf eine sehr kleine Größe verkleinert wurde. Oder wenn eine auf „ TapHandler “ basierende Schaltfläche nahe am Bildschirmrand platziert ist, kann sie dazu verwendet werden, Fitts’ Gesetz zu erfüllen: Reagiere auf Mausklicks am Bildschirmrand, auch wenn die Schaltfläche optisch um einige Pixel vom Rand entfernt ist.

Der Standardwert ist 0.

Rechteck mit umgebendem Randbereich für eine erweiterte Berührungserkennung

parent : Item

Die „ Item “, die den Geltungsbereich des Handlers darstellt; das „Item“, in dem er deklariert wurde. Der Handler verarbeitet Ereignisse im Namen dieses „Item“, was bedeutet, dass ein Zeigerereignis relevant ist, wenn mindestens eines seiner „ eventPoints “ innerhalb des „Item“ auftritt. Anfangs ist „ target() “ identisch, kann jedoch neu zugewiesen werden.

Siehe auch „ target “ und „ QObject::parent()“.

target : Item

Das Element, auf das dieser Handler einwirkt.

Standardmäßig entspricht es dem „ parent “, also dem Element, in dem der Handler deklariert ist. Manchmal kann es jedoch sinnvoll sein, das Ziel auf ein anderes Element festzulegen, um Ereignisse in einem Element zu verarbeiten, aber ein anderes Element zu bearbeiten; oder auf „ null “, um das Standardverhalten zu deaktivieren und stattdessen etwas anderes auszuführen.

Signal-Dokumentation

canceled(eventPoint point)

Wenn dieser Handler den angegebenen point bereits ergriffen hat, wird dieses Signal ausgelöst, sobald die Ergreifung von einem anderen Pointer-Handler oder Item übernommen wird.

Hinweis: Der entsprechende Handler ist „ onCanceled “.

grabChanged(PointerDevice::GrabTransition transition, eventPoint point)

Dieses Signal wird ausgelöst, wenn sich der Grab in einer Weise verändert hat, die für diesen Handler relevant ist.

Das Verb „ transition “ gibt an, was geschehen ist. Das Objekt „ point “ ist der Punkt, der ergriffen oder freigegeben wurde.

Gültige Werte für „ transition “ sind:

KonstanteBeschreibung
PointerDevice.GrabExclusiveDieser Handler hat die Hauptverantwortung für die Bearbeitung des point übernommen.
PointerDevice.UngrabExclusiveDieser Handler hat seine bisherige exklusive Belegung aufgegeben.
PointerDevice.CancelGrabExclusiveDie exklusive Zugriffsberechtigung dieses Handlers wurde übernommen oder aufgehoben.
PointerDevice.GrabPassiveDieser Handler hat eine passive Zugriffssteuerung erworben, um die „ point “ zu überwachen.
PointerDevice.UngrabPassiveDieser Handler hat seine bisherige passive Zugriffskontrolle aufgegeben.
PointerDevice.CancelGrabPassiveDie bisherige passive Zugriffssteuerung dieses Handlers wurde abnormal beendet.

Hinweis: Der entsprechende Handler ist „ onGrabChanged “.

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