p
u
b
l
i
c
i
t
é
publicité
  1. #1
    Membre éclairé
    Avatar de haraelendil
    Homme Profil pro
    Développeur informatique
    Inscrit en
    février 2004
    Messages
    283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : février 2004
    Messages : 283
    Points : 382
    Points
    382

    Par défaut dessiner highlight selection dans une liste

    Salut salut.

    Voila, j'ai un petit problème épineux que je n'arrive pas à résoudre, j’espère que quelqu'un pourra m'aider:

    J'ai une liste avec notamment ici un delegate perso qui, pour certaines colonnes, dessine lui même le contenu de la case, et pour les autres (la plupart des colonnes de la liste), appelle juste la méthode paint de QStyledItemDelegate.

    Donc le rendu est comme je voudrais, sauf pour la ligne sélectionnée.
    En effet, pour les cases dessinées par QStyledItemDelegate, le fond est dessiné en bleu pour marquer la sélection.

    J'ai réussi à reproduire un peu ce comportement en récupérant la brush highlight() de la palette passée en paramètre (via un QStyleOptionViewItem), mais ça ne donne pas tout à fait le même résultat:

    Les autre colonnes ont un espèce de dégradé bleu, en fait, après inspection plus attentive, juste deux couleurs, celle du bas qui semble correspondre à la brush highlight(), et celle du haut un peu plus claire.

    Quelqu'un a une idée de comment Qt récupère (ou calcule) cette deuxième couleur, que je puisse avoir un résultat homogène?

    merci d'avance

  2. #2
    Membre éclairé
    Avatar de haraelendil
    Homme Profil pro
    Développeur informatique
    Inscrit en
    février 2004
    Messages
    283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : février 2004
    Messages : 283
    Points : 382
    Points
    382

    Par défaut

    Bon bah après un week end à pas avancer, j'ai fini par trouvé, c'est très con une fois qu'on connait l'astuce, mais quand on sait pas, c'est une autre histoire :p

    Donc si quelqu'un à besoin, voila la solution:

    En fait il faut juste passer par QStyle et drawPrimitive pour faire le boulot, et c'est magique ça roule tout seul.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 08/08/2006, 08h50
  2. Réponses: 1
    Dernier message: 15/06/2006, 18h01
  3. probleme de selection dans une liste deroulant
    Par biboulou dans le forum IHM
    Réponses: 5
    Dernier message: 04/05/2006, 12h16
  4. [Selected]Dans une liste déroulante
    Par ozzmax dans le forum JavaScript
    Réponses: 2
    Dernier message: 16/11/2005, 19h18
  5. Réponses: 8
    Dernier message: 05/05/2004, 16h28

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