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 des icônes dans un QAbstractItemView


Sujet :

Qt

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    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 Ajouter des icônes dans un QAbstractItemView
    Bonjour,

    Dans le cadre d'un projet, j'ai besoin d'ajouter des icônes dans un QAbstractItemView en plus du texte qui est ajouté lors de la définition d'un QCompleter.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    classesCompleter = new QCompleter(classes, this);
    // L'argument classes correspondant à un QStringList.
    Le QAbstractItemView est récupéré par classesCompleter->popup() et c'est en fait cela que je cherche à modifier en ajoutant des icônes. J'ai beau faire des recherches, je ne trouve rien d'approprié à mon problème, je sais toutefois que c'est possible, ni plus ni moins.

    Merci d'avance de votre aide,
    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

  2. #2
    Membre expérimenté
    Avatar de Niak74
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    271
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2007
    Messages : 271
    Par défaut
    Quel dérivé de QAbstractItemView récupères tu ? (regarde la fonction setPopup pour modifier ça)

    Si c'est un QListView, la méthode setViewMode() permet d'activer la prise en charge des icônes.

    Reste à savoir comment tu associe un icone à chaque entrée.

  3. #3
    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
    Alors j'ai utilisé setPopup() de manière à avoir un QListView en tant que popup. Toutefois, setViewMode() n'est pas très intéressant car il permet ne fait que changer le type d'affichage. Comme ce que je souhaite réaliser est comme ceci :

    __
    |_| Texte
    __
    |_| Texte

    ...

    J'ai plutôt intérêt à laisser par défaut (dans le schéma ci-dessus, les carrés représentent les icônes).
    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

  4. #4
    Membre expérimenté
    Avatar de Niak74
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    271
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2007
    Messages : 271
    Par défaut
    Je te dis ça parce que par défaut, le QListView est en mode text, et non pas en mode text + icon.

    Doc de QListView :
    Items in a list view can be displayed using one of two view modes: In ListMode, the items are displayed in the form of a simple list; in IconMode, the list view takes the form of an icon view in which the items are displayed with icons like files in a file manager. By default, the list view is in ListMode. To change the view mode, use the setViewMode() function, and to determine the current view mode, use viewMode().
    Mais même une fois ceci changé, il faut trouver comment associer une icone à un item du modèle.

    Si le modèle est un QDirModel ou un QFileSystemModel, les icones sont automatiquement déterminés (bien qu'ils puissent être permutés via setIconProvider et la classe QFileIconProvider). Mais je doute que ce soit ton cas.

  5. #5
    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
    Non, je ne me sers pas de ce type de modèles.
    En fait, je serais bien passé par QListWidget plutôt que QListView mais le problème est qu'à l'affichage de la complétition, on a ceci :



    Même si je tente d'agrandir la popup, ça ne change rien, elle en est juste décalée, même si elle contient toujours les informations de la complétition.
    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

  6. #6
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    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 035
    Par défaut
    Pour ajouter une icone, c'est plutôt le model qu'il faut regarder. Il doit retourner une icone pour le role QT:ecorationRole dans la fonction data

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

Discussions similaires

  1. ajouter des icônes dans une application
    Par d'Oursse dans le forum Windows
    Réponses: 5
    Dernier message: 30/10/2010, 09h29
  2. [Tableaux]Ajouter des valeurs dans un tableau
    Par Antoine1183 dans le forum Collection et Stream
    Réponses: 13
    Dernier message: 03/04/2005, 13h41
  3. Ajouter des chemins dans la variable PATH
    Par Righetto Dominique dans le forum Linux
    Réponses: 7
    Dernier message: 21/03/2004, 17h38
  4. [VBA-E] Ajouter des fonctions dans Excel
    Par Clezio dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 06/03/2004, 01h18
  5. Ajouter des contrôles dans la palette des contrôles.
    Par WOLO Laurent dans le forum MFC
    Réponses: 4
    Dernier message: 22/01/2004, 08h27

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