2010-04-06 3 views
9

Je dessine un QLineEdit pour avoir des bordures arrondies à utiliser comme boîte de recherche. L'arrondi des frontières elles-mêmes était facile, mais je ne peux pas comprendre pour la vie de moi comment arrondir la partie en surbrillance du widget quand il a le focus. J'ai essayé QLineEdit :: focus, mais cela ne modifie que la bordure intérieure. Les images ci-dessous montrent comment l'illusion d'un qlineedit arrondi est perdue quand il gagne le focus.Qt 4.6 Style QLineEdit. Comment puis-je styliser la bordure en surbrillance grise afin qu'elle soit arrondie?

QListView, QLineEdit { 
    color: rgb(127, 0, 63); 
    selection-color: white; 
    border: 2px groove gray; 
    border-radius: 10px; 
    padding: 2px 4px; 
} 
QLineEdit:focus { 
    color: rgb(127, 0, 63); 
    selection-color: white; 
    border: 2px groove gray; 
    border-radius: 10px; 
    padding: 2px 4px; 
} 

QLineEdit:edit-focus { 
    color: rgb(127, 0, 63); 
    selection-color: white; 
    border: 2px groove gray; 
    border-radius: 10px; 
    padding: 2px 4px; 
} 

images avec et sans mise au point: without http://img688.imageshack.us/img688/1986/screenshot20100406at310.png with http://img251.imageshack.us/img251/1986/screenshot20100406at310.png

Répondre

-1

Styling QLineEdit:focus appropriée devrait prendre soin de votre problème voir Qt Stylesheet Reference, List of Pseudo States

+0

Le pseudo-état affecte uniquement la bordure réelle, pas la bordure externe. Il est possible que je ne l'utilise pas correctement. J'ai ajouté mes styles QLineEdit: focus et QLineEdit: edit-focus. Les photos restent les mêmes. – jkyle

+0

Oui, vous avez raison, cela change le style du widget lorsque le focus est sur le widget, il n'affecte pas le rectangle de focus, en ajoutant une meilleure réponse, en laissant cela pour référence –

Questions connexes