IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PyQt Python Discussion :

Alignement des éléments d'un ComboBox [QtGui]


Sujet :

PyQt Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Octobre 2008
    Messages
    330
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 330
    Par défaut Alignement des éléments d'un ComboBox
    Bonjour,

    J'utilise Pyside et malgré mes recherches un peu partout je n'arrive pas à trouver la méthode pour aligner "à droite" les éléments d'un QComboBox (liste des items + texte affiché). J'ai cherché vers les feuilles de styles mais sans succès (pour l'instant).
    Je vous remercie pour ce coup de main qui me permettra de rendre cohérent mon affichage (tous mes contrôles sont alignés à droite sauf le Combo qui est 'coincé' à gauche).
    Merci d'avance.
    Cordialement,

  2. #2
    Expert confirmé
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 486
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    Je ne travaille qu'avec PyQt4: j'espère que ce sera pareil pour PySide.

    Pour les items:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
            for i in xrange(0, self.combo.count()):
                self.combo.setItemData(i, QtCore.Qt.AlignRight, QtCore.Qt.TextAlignmentRole)
    Pour la ligne qui s'affiche en dehors de toute sélection, c'est facile pour une ligne editable:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
            self.combo.setEditable(True)
            self.ligne = self.combo.lineEdit()
            self.ligne.setAlignment(QtCore.Qt.AlignRight)
    Bien sûr, la chaine affichée est calée à droite contre la petite flèche du combobox.

    Si cette ligne ne doit pas être editable, rien n'empêche d'interdire l'édition avec:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
            self.ligne.setReadOnly(True)
    Mais dans ce cas, la ligne du combobox, bien qu'affichée, est blanche et non grise. On peut corriger en utilisant un setStyleSheet (ajuster le niveau de gris!):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
            self.ligne.setStyleSheet(u"background-color:#C0C0C0")
    Mais ça ne me plait pas beaucoup sur le plan esthétique. A voir, si le combobox n'est pas éditable, si le calage à gauche est acceptable pour la ligne affichée.

  3. #3
    Membre éclairé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Octobre 2008
    Messages
    330
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 330
    Par défaut
    Tytamos, je te remercie pour tes conseils éclairés qui fonctionnent bien sous PySide.
    Par contre, je dois "creuser" un peu la présentation car je perds l'apparence initial du combo, mais ce n'est pas très grave ...
    @+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Tri des éléments d'une combobox
    Par Laughing Man dans le forum C#
    Réponses: 2
    Dernier message: 05/03/2009, 12h13
  2. Cacher des élément d'un combobox
    Par Blagueur dans le forum Débuter
    Réponses: 14
    Dernier message: 08/10/2008, 08h35
  3. Police différente des éléments d'un combobox
    Par gangsterus dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 02/04/2008, 13h46
  4. Comment aligner des éléments d'un TEdit à droite ?
    Par bertrand_declerck dans le forum Composants VCL
    Réponses: 18
    Dernier message: 15/06/2005, 17h46
  5. Réponses: 3
    Dernier message: 26/01/2005, 15h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo