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 :

Ajouter une icone


Sujet :

Qt

  1. #1
    Membre du Club
    Inscrit en
    Mai 2008
    Messages
    117
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 117
    Points : 58
    Points
    58
    Par défaut Ajouter une icone
    Etant donné que j'affiche dans mon treeview le contenu d'un fichier, j'essaye d'inclure des icônes spécifiques ou d'ajouter une icône au début de chaque treeitem.
    Comment dois je procéder?

  2. #2
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 033
    Points : 13 968
    Points
    13 968
    Par défaut
    Citation Envoyé par maroua_mm Voir le message
    Etant donné que j'affiche dans mon treeview le contenu d'un fichier, j'essaye d'inclure des icônes spécifiques ou d'ajouter une icône au début de chaque treeitem.
    Comment dois je procéder?
    Salut.
    Tu utilise quoi comme model?

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 874
    Points : 2 890
    Points
    2 890
    Par défaut
    L'icône est un item par lui-même que tu peux instancier en faisant par exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    new QStandardItem(QIcon("icone.png"))
    Ensuite cet item est à ajouter à la liste de tes items représentant ta ligne qui est par exemple du type QList<QStandardItem*>

  4. #4
    Membre du Club
    Inscrit en
    Mai 2008
    Messages
    117
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 117
    Points : 58
    Points
    58
    Par défaut
    J'utilise le modèle de l'exemple de Qt : Simple tree model
    class TreeModel : public QAbstractItemModel

  5. #5
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 033
    Points : 13 968
    Points
    13 968
    Par défaut
    Il faut que tu retourne ton îcone pour le rôle Qt:ecorationRole

    http://qt.developpez.com/doc/4.5/qt/#itemdatarole-enum

  6. #6
    Membre du Club
    Inscrit en
    Mai 2008
    Messages
    117
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 117
    Points : 58
    Points
    58
    Par défaut
    Merci pour votre réponse.
    Mais ce n'est pas trop clair.

  7. #7
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 033
    Points : 13 968
    Points
    13 968
    Par défaut
    Citation Envoyé par maroua_mm Voir le message
    Merci pour votre réponse.
    Mais ce n'est pas trop clair.
    Dans la fonction data, il faut que tu traite le cas ou le role == Qt:: DecorationRole pour retourner une îcone

  8. #8
    Membre du Club
    Inscrit en
    Mai 2008
    Messages
    117
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 117
    Points : 58
    Points
    58
    Par défaut
    Qt:isplayRole The key data to be rendered in the form of text.
    Qt:ecorationRole The data to be rendered as a decoration in the form of an icon.
    avec DecorationRole je ne peux afficher que l'icône mais moi je veux quand je clique sur un item une menu contextuel s'affiche et lorsque je clique sur activer, une icône doit être affichée montrant que le module est activé.
    Comment dois je procédé étant donné que je me suis penché à utilisé un fichier xml à partir duquel le treeview affiche ses items.

  9. #9
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 033
    Points : 13 968
    Points
    13 968
    Par défaut
    Citation Envoyé par maroua_mm Voir le message
    Qt:isplayRole The key data to be rendered in the form of text.
    Qt:ecorationRole The data to be rendered as a decoration in the form of an icon.
    Ce que tu n'as pas dû comprendre, c'est qu'un viewer appel plusieurs fois data pour une même zone. Une fois pour chaque rôle.
    Il te faut donc envoyer le text lors du Qt:: DisplayRole et l'îcone sur lors du Qt:: DecorationRole.
    Ces différents appels sont complémentaire. De même, si tu voulais changer la font, il te faut gérer le cas de Qt::FontRole et ainsi de suite.

  10. #10
    Membre du Club
    Inscrit en
    Mai 2008
    Messages
    117
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 117
    Points : 58
    Points
    58
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    QTreeWidgetItem *featureItem = new QTreeWidgetItem(interfaceItem);
    	featureItem->setText(0, feature);
    	featureItem->setIcon(0, featureIcon);
    Etant donné que dans ce exemple, j'utilise un QTreeWidget, afin d'ajouter une icone au treeWidgetitem.
    Comment dois je procéder dans le cas où j'ai un treeview qui affiche le contenu d'un fichier XML à partir d'un modèle pour ajouter des icônes aux balises du fichier XML?
    Y'a til une autre possibilité pour que je puisse ajouter des icônes dans le fichier xml?

Discussions similaires

  1. [VB.Net] Ajouter une icone dans un menu
    Par developpeur_débutant dans le forum Windows Forms
    Réponses: 2
    Dernier message: 07/11/2006, 22h32
  2. Comment ajouter une icone à une JInternalFrame
    Par wassimb dans le forum AWT/Swing
    Réponses: 11
    Dernier message: 12/07/2006, 15h13
  3. Réponses: 7
    Dernier message: 12/06/2006, 13h32
  4. Ajouter une icone dans la barre des titres (cme emule)
    Par Crisanar dans le forum Windows
    Réponses: 7
    Dernier message: 12/12/2004, 12h08

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