2017-02-14 1 views
1

J'ai un QComboBox qui est rendu éditable. Quand je tape du texte dedans et que j'appuie sur enter, il effectue son action. Mais le curseur clignote toujours dans la zone de texte. Et même si par erreur j'appuie sur n'importe quelle touche UP/DOWN l'élément change.Comment faire pour supprimer le curseur de QComboBox modifiable lorsque je appuie sur Entrée ou cliquez sur la souris en dehors de sa zone?

Comment supprimer ce curseur clignotant si j'appuie sur la touche Entrée ou cliquez sur la souris en dehors de sa zone?

+0

Un code serait bien pour le contexte, bien que ce soit en fait une description assez complète. –

Répondre

0

C'est le comportement standard d'une zone de liste déroulante, dans Qt ou dans n'importe quelle autre boîte à outils. Si vous voulez que le curseur arrête de clignoter, donnez le focus au clavier à un autre widget. Vous pouvez appeler le QWidget::setFocus() sur un autre widget de votre application. Jetez également un coup d'œil à la documentation générale sur le focus dans Qt5, Keyboard Focus in Widgets, pour obtenir plus d'informations sur la mise au point du clavier.

+1

Merci @Irineau. SetFocusPolicy au widget central a fait le travail comme décrit dans le lien. – Pramod