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

Qt Discussion :

[Qt 4.7] Feuille de styles et menu de QPushButton


Sujet :

Qt

  1. #1
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 65
    Par défaut [Qt 4.7] Feuille de styles et menu de QPushButton
    Bonjour,

    Je cherche à changer par stylesheet les menus des QPushButton.

    J'ai essayé plusieurs choses :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    QPushButton QMenu {
     /* ... */
    }
    avec les > entre les deux...
    rien a faire ca fonctionne pas

    Est-ce que quelqu'un aurait une idée???

    Merci d'avance !


    Edit : Je suis sous linux ubuntu 64 Bit et j'utilise Qt 4.7.2 en 64 Bit.
    Je pense que ca n'influt absolument pas mais bon on ne sait jamais

  2. #2
    Rédacteur
    Avatar de Amnell
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2009
    Messages
    1 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 840
    Par défaut
    Bonsoir,

    Vous devez passer par le "::menu-indicator" de votre QPushButton pour le styliser.

    Exemple fourni par la documentation :

    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
     QPushButton:open { /* when the button has its menu open */
         background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
                                           stop: 0 #dadbde, stop: 1 #f6f7fa);
     }
     
     QPushButton::menu-indicator {
         image: url(menu_indicator.png);
         subcontrol-origin: padding;
         subcontrol-position: bottom right;
     }
     
     QPushButton::menu-indicator:pressed, QPushButton::menu-indicator:open {
         position: relative;
         top: 2px; left: 2px; /* shift the arrow by 2 px */
     }
    Bonne continuation,
    Amnell.
    N'oubliez pas de consulter la FAQ Qt ainsi que les cours et tutoriels C++/Qt !

    Dernier article : Débuter avec les Enlightenment Foundation Libraries (EFL)
    Dernières traductions : Introduction à Qt Quick - Applications modernes avec Qt et QML
    Vous cherchez un livre sur Qt 5, Qt Quick et QML ? Créer des applications avec Qt 5 - Les essentiels

  3. #3
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 65
    Par défaut
    Bonjour,

    Justement j'ai essayé cette solution de la documentation mais cela ne change en rien le QMenu associé, ça change le bouton et la petite flèche à droite du bouton (comme son nom l'indique menu-indicator)


  4. #4
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 65
    Par défaut
    Bonjour,

    J'ai trouvé une solution qui me plait pas beaucoup mais qui fonctionne.
    Au lieu de charger dynamiquement la feuille style, il faut charger à la construction de l'objet QMenu le bout de stylesheet qui va bien.
    Et c'est bien le style de QMenu qui est appliqué au menu du QPushButton et non le
    QPushButton::menu-indicator.


    Merci,

    Si vous voulez plus d'explication surtout n'hésitez pas à me poser la question.

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

Discussions similaires

  1. Marge dans menu et feuille de style
    Par Jolt0x dans le forum Mise en page CSS
    Réponses: 8
    Dernier message: 31/03/2011, 17h27
  2. Menu HTML et feuilles de style
    Par Jinx_ dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 19/03/2007, 20h38
  3. MSXML2, enchainer deux feuilles de Style
    Par burno dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 10/09/2003, 13h47
  4. feuille de style generale
    Par Manu_Just dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 11/03/2003, 10h06
  5. Rattacher une feuille de style a un XML existant
    Par aour dans le forum XML/XSL et SOAP
    Réponses: 5
    Dernier message: 08/10/2002, 22h07

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