WaylandSeat QML Type (Uncreatable)
Permet d'accéder aux entrées via le clavier, la souris et l'écran tactile. En savoir plus...
| Import Statement: | import QtWayland.Compositor |
| In C++: | QWaylandSeat |
Remarque : il s'agit d'un type non créable. Il ne peut pas être instancié en QML.
Signaux
- void cursorSurfaceRequest(QWaylandSurface surface, int hotspotX, int hotspotY)
- void keyboardFocusChanged(QWaylandSurface newFocus, QWaylandSurface oldFocus)
Méthodes
- void sendKeyEvent(int qtKey, bool pressed)
- void sendTouchCancelEvent(WaylandClient client)
- void sendTouchFrameEvent(WaylandClient client)
- void sendTouchPointMoved(WaylandSurface surface, int id, point position)
- uint sendTouchPointPressed(WaylandSurface surface, int id, point position)
- void sendTouchPointReleased(WaylandSurface surface, int id, point position)
- void sendUnicodeKeyPressEvent(uint unicode)
(since 6.7) - void sendUnicodeKeyReleaseEvent(uint unicode)
(since 6.7)
Description détaillée
Le type WaylandSeat permet d'accéder à différents types d'entrées utilisateur et gère le focus du clavier ainsi que le pointeur de la souris. Il correspond à l'interface wl_seat du protocole Wayland.
Documentation sur les signaux
void cursorSurfaceRequest(QWaylandSurface surface, int hotspotX, int hotspotY)
Ce signal est émis lorsque le client a demandé qu’une « surface » spécifique devienne le curseur de la souris. Par exemple, lorsque l’utilisateur survole une surface particulière et que vous souhaitez que le curseur se transforme en flèche de redimensionnement.
hotspotX et hotspotY correspondent tous deux à des décalages par rapport au coin supérieur gauche d’une surface de pointeur, là où un clic doit avoir lieu. Par exemple, si la surface de curseur demandée est une flèche, ces paramètres indiquent où se trouve la pointe de la flèche sur cette surface.
Remarque : le gestionnaire correspondant est onCursorSurfaceRequest.
void keyboardFocusChanged(QWaylandSurface newFocus, QWaylandSurface oldFocus)
Ce signal est émis lorsque la fonction `setKeyboardFocus()` est appelée ou lorsqu'un ` WaylandQuickItem ` détient le focus et que l'utilisateur commence à appuyer sur des touches.
newFocus contient la surface qui a reçu le focus clavier ; ou nullptr si aucune surface n'a le focus. oldFocus contient la surface qui a perdu le focus clavier ; ou nullptr si aucune surface n'avait le focus.
Remarque : le gestionnaire correspondant est onKeyboardFocusChanged.
Documentation de la méthode
void sendKeyEvent(int qtKey, bool pressed)
Envoie un événement de pression (si pressed vaut true) ou de relâchement (si pressed vaut false) d'une touche qtKey au périphérique clavier.
void sendTouchCancelEvent(WaylandClient client)
Envoie un événement d'annulation à l'appareil tactile d'un objet de type « client ».
void sendTouchFrameEvent(WaylandClient client)
Envoie un événement de trame à l'appareil tactile d'un ` client ` pour signaler la fin d'une série d'événements tactiles (toucher, relâcher et mouvement).
void sendTouchPointMoved(WaylandSurface surface, int id, point position)
Envoie un événement « touch moved » pour le point de contact id sur surface, dont la position est position.
Remarque : vous devez envoyer un événement « touch frame » lorsque vous avez terminé d'envoyer des événements tactiles.
Avertissement : cette API ne doit pas être utilisée en combinaison avec le transfert d’événements tactiles via WaylandQuickItem::touchEventsEnabled, car cela pourrait entraîner des conflits d’identifiants tactiles.
Renvoie le numéro de série de l’événement de mouvement tactile.
uint sendTouchPointPressed(WaylandSurface surface, int id, point position)
Envoie un événement de pression tactile pour le point de contact id sur surface, dont la position est position.
Remarque : vous devez envoyer un événement « touch frame » lorsque vous avez terminé d'envoyer des événements tactiles.
Avertissement : cette API ne doit pas être utilisée en combinaison avec le transfert d'événements tactiles via WaylandQuickItem::touchEventsEnabled, car cela pourrait entraîner des conflits d'identifiants tactiles.
Renvoie le numéro de série de l'événement de pression.
void sendTouchPointReleased(WaylandSurface surface, int id, point position)
Envoie un événement de relâchement du toucher pour le point de contact id sur surface, dont la position est position.
Remarque : vous devez envoyer un événement « touch frame » lorsque vous avez terminé d'envoyer des événements tactiles.
Avertissement : cette API ne doit pas être utilisée en combinaison avec le transfert d’événements tactiles via WaylandQuickItem::touchEventsEnabled, car cela pourrait entraîner des conflits d’identifiants tactiles.
Renvoie le numéro de série de l'événement « touch up ».
[since 6.7] void sendUnicodeKeyPressEvent(uint unicode)
Envoie un événement de frappe correspondant à l'unicode UCS4 via un protocole de saisie de texte.
Remarque : cette fonction ne fonctionnera pas correctement si le client ne prend pas en charge le protocole de saisie de texte pris en charge par le compositeur.
Cette méthode a été introduite dans Qt 6.7.
[since 6.7] void sendUnicodeKeyReleaseEvent(uint unicode)
Envoie un événement de relâchement de touche d'une touche « unicode » (UCS4) via un protocole de saisie de texte.
Remarque : cette fonction ne fonctionnera pas correctement si le client ne prend pas en charge le protocole d'entrée de texte pris en charge par le compositeur.
Cette méthode a été introduite dans Qt 6.7.
© 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.