Bonjour,
J'utilise une TableView, et je souhaite bypasser la gestion de la touche clavier Return. Effectivement, celle-ci est traitée par la TableView et l'event n'est donc pas propagé aux parents.
Pour le moment, je gère la chose en émettant un signal perso que je récupère au niveau souhaité, mais je préférerai avoir accès à mon event clavier...
Une autre solution pourrai être de générer un event clavier pour simuler la propagation aux parents, mais ce n'est apparemment pas simple à mettre en place, et surtout pas très joli.
Y a-t-il donc un moyen de redéfinir la gestion d'un Key event à la façon QWidget (surcharge de keyPressEvent) ou d'indiquer à mon item TableView de ne pas gérer des touches spécifiques ?
Voici un aperçu du code :
Le but étant d'avoir "WIN" affiché en console quand j'appuie sur Return. Ça marche bien avec toutes les autres touches clavier qui ne sont pas "accepted" par la TableView.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 Item { Keys.onPressed: { console.debug("WIN"); } TableView { Keys.onReturnPressed: { console.debug("Return"); event.accepted = false; } Keys.onPressed: { if(event.key === Qt.Key_Return) { console.debug("Gen Return"); event.accepted = false; } } } }
Merci !
Partager