QLineEdit: comment gérer les flèches haut et bas?
J'ai une console d'entrée dans mon Qt
en fonction de l'application, c'est un QLineEdit
, toute l'Interface utilisateur est conçue par QtDesigner
. Est-il un moyen simple moyen de gérer les flèches haut et bas pour mettre en œuvre l'entrée de l'histoire? "Passer à la fente" afficher uniquement les returnProcessed
signal, aucun moyen que je peux voir pour gérer les flèches haut et bas 🙁
OriginalL'auteur grigoryvp | 2010-01-16
Vous devez vous connecter pour publier un commentaire.
vous pouvez installer le filtre d'événements et surveillez votre ligne d'édition de l'événement dans la fenêtre de votre classe. Ci-dessous est un exemple:
déclarer méthode de gestionnaire d'événement sur la fenêtre de votre classe:
constructeur de fenêtre
gestionnaire d'événement de mise en œuvre:
espère que cette aide, en ce qui concerne
Merci, fonctionne comme un charme 🙂
OriginalL'auteur serge_gubenko
Vous pouvez sous-classe QLineEdit et de re-mettre en œuvre le virtuel événement keypressevent méthode pour gérer vos touches spéciales.
Voir: doc.trolltech.com/4.6/designer-creating-custom-widgets.html
Ainsi, afin d'obtenir de l'ad flèches de travail que j'ai besoin de mettre en œuvre un ensemble de QtDesigner plugin avec des tonnes de fonctions qui définit la manière d'utiliser un "nouveau" widget? 🙁
outre l'utilisation de filtres d'événement (voir ma réponse), vous pouvez définir la même méthode pour vous de la classe de fenêtre et de voir si lineedit est\flèche vers le bas les principaux événements de frapper; non gérée événements sont propagées jusqu'le parent du widget de la chaîne jusqu'à ce qu'un widget accepte avec accept() ou un filtre d'événement il consomme.
de l'Enfer, en plus de plugins pour le concepteur, vous pouvez également ajouter un QLineEdit à votre formulaire, cliquez avec le bouton droit et "Promouvoir" à une classe dérivée. Fonctionne comme un charme pour les cas comme cela.
OriginalL'auteur Kyle Lutz
J'ai eu le même problème, mais j'ai trouver dans d'autres forums que vous avez besoin pour
setFocus
, par exemple:Cela fonctionne pour moi.
De référence:
http://www.qtforum.org/article/28240/how-to-get-arrow-keys.html
OriginalL'auteur Sinuhe Tellez Rivera
Pour moi en PyQt ce n'était pas de travail,
Mais cela a fonctionné,
OriginalL'auteur has