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 :

QGraphicsView afficher liste images miniatures


Sujet :

Qt

  1. #1
    Membre régulier
    Avatar de mac&cheese
    Profil pro
    Étudiant
    Inscrit en
    Mars 2008
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2008
    Messages : 98
    Points : 96
    Points
    96
    Par défaut QGraphicsView afficher liste images miniatures
    Bonjour,

    Voila je developpe un programme dans lesquel j'ai besoin d'afficher une liste d'images miniature.
    Je pensais utiliser QGraphicsView, mais je ne sais pas si il y a quelque chose de peut etre plus approprié...?
    Sinon, j'ai ecrit le bout de code minimaliste de l'exemple de la doc Qt, à savoir:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    QGraphicsScene scene;
      scene.addText("test QGraphicsView");
     
      graphicsView->setScene(&scene);
      graphicsView->show();
    Et... aucun resultat, pas de texte!
    Auriez vous une petite idée du probleme?

    Merci par avance

    Mac & Cheese

  2. #2
    Membre expert

    Avatar de IrmatDen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 727
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 727
    Points : 3 266
    Points
    3 266
    Par défaut
    Salut,

    Pour afficher des images, tu peux passer par un QLabel, et pour le calcul des miniatures, une fois chargé ton pixmap, tu utilises le résultat de QPixmap::scaled. Il y a un micro-exemple d'affichage dans la FAQ.

    Pour ton problème de scène:
    * la position (par défaut: {0;0} est-elle visible?
    * Quelle est la portée de graphicsView? As-tu bien indiqué le parent?

  3. #3
    Membre régulier
    Avatar de mac&cheese
    Profil pro
    Étudiant
    Inscrit en
    Mars 2008
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2008
    Messages : 98
    Points : 96
    Points
    96
    Par défaut
    Merci, pour ta reponse
    Mais j'utilise deja un QLabel pour afficher une seule image mais la je voudrai une liste avec scrollbar horizontal, pour avoir plusieurs miniatures dans une zone de taille fixe.
    Vois tu?

  4. #4
    Membre expert

    Avatar de IrmatDen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 727
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 727
    Points : 3 266
    Points
    3 266
    Par défaut
    Oui, tu peux embarquer tout ça dans un QScrollArea avec un QHBoxLayout et en créant autant de QLabel que nécessaire.
    Et si tu as vraiment trop d'images, alors autant direct faire son propre widget liste à embarquer dans un QScrollArea, parce que le QGraphicsView ne te fera pas gagner grand chose.

  5. #5
    Membre régulier
    Avatar de mac&cheese
    Profil pro
    Étudiant
    Inscrit en
    Mars 2008
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2008
    Messages : 98
    Points : 96
    Points
    96
    Par défaut
    Dacord, je test ca toute à l'heure.
    Merci pour ta reponse.

    Mac & Cheese

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 23
    Points : 12
    Points
    12
    Par défaut
    Salut,

    J'ai le même porblème en ce moment. J'ai mis une QHBoxLayout dans un widget QScrollArea, avec 8 QLabel avec image. Pour que ce soit joli, il faudrait que seulement les 4 premieres apparaissent, puis avec une scrollbar me déplacer sur la droite pour afficher mes 4 autres petites miniatures.

    Je remonte ce poste car je travaille avec QtJambi et Eclipse et ca ne fonctionne pas, les images se contentant de se monter les unes sur les autres (pas de scrollbar qui apparait!!!).

    Que puis-je faire ?

    Précision: j'ai essayé la même chose, mais avec un QGridLayout... de même, les scrollbar n'apparaissent pas. Pourquoi mes label se montent les uns sur les autres ?

    J'ai aussi commencé à essayer d'attache un QHBoxLayout et un widget QScrollBar... mais c'est compliqué. Et je suis sur que c'est possible avec un QScrollArea.

    Si tu as réussi mac&cheese, n'hésite pas!

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 23
    Points : 12
    Points
    12
    Par défaut
    c'est bon... j'ai trouve. en fait, il faut mettre la qscrollarea, puis mettre un widget dedant, qui acceptera le layout. et ca fonctionne... omg

  8. #8
    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 flavio_dev Voir le message
    c'est bon... j'ai trouve. en fait, il faut mettre la qscrollarea, puis mettre un widget dedant, qui acceptera le layout. et ca fonctionne... omg

    merci d'avoir mis la solution.
    Par contre ne faut'il pas aussi autoriser ceci :
    http://qt.developpez.com/doc/4.4/qsc...resizable-prop
    avec QtJambi?

  9. #9
    Membre éprouvé

    Profil pro
    Inscrit en
    Mai 2007
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Mai 2007
    Messages : 774
    Points : 969
    Points
    969
    Par défaut
    L'affichage anrachique des widgets vient souvent d'une mauvaise utilisation du layout, et de l'attribution des parents du layout et des "sous widgets".

    Selon moi, la façon la plus efficace est bien celle énoncée plus haut, à savoir crée un widget global, auquel on ajoute un layout ayant comme parent ce widget global. Puis ajouter les "sous widgets" dans ce layout.

    Ensuite, pour les scoll bar, si les tailles ou sizeHint sont bien spécifiés, et que le contenant est du bon type, les scrollbar sont bien gérées par défaut.

    Bonne chance,

    G.

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 23
    Points : 12
    Points
    12
    Par défaut
    Citation Envoyé par Mongaulois Voir le message

    merci d'avoir mis la solution.
    Par contre ne faut'il pas aussi autoriser ceci :
    http://qt.developpez.com/doc/4.4/qsc...resizable-prop
    avec QtJambi?

    Oui mon gaulois, il faut mettre ca aussi.

    scrollArea.setWidgetResizable(true);

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

Discussions similaires

  1. [SP-2007] Modifier le DispForm.aspx d'une liste pour y afficher une image
    Par ljin86 dans le forum SharePoint
    Réponses: 12
    Dernier message: 13/01/2011, 11h18
  2. [Galerie] Afficher des images en miniature
    Par piotrr dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 03/03/2009, 09h28
  3. afficher des images miniatures avec scroll bar
    Par mappec dans le forum Flash
    Réponses: 0
    Dernier message: 09/08/2008, 00h11
  4. Afficher des images miniatures dans un état Access
    Par omracine dans le forum VBA Access
    Réponses: 4
    Dernier message: 23/10/2007, 10h22
  5. Afficher des images en miniatures
    Par Monina dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 14/12/2005, 18h00

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