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 :

Affichage image Qt dans QLabel


Sujet :

Qt

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Mai 2014
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Mai 2014
    Messages : 12
    Points : 9
    Points
    9
    Par défaut Affichage image Qt dans QLabel
    Bonjour

    Est-ce que quelqu'un pourrait m'aider s'il vous plaît, je suis débutant avec Qt, j'ai créé une fenêtre très simple avec Qt designer et j'aimerais afficher une image. Seulement, j'ai cherché sur plusieurs sites, plusieurs tutos, forum et je n'y arrive pas. J'ai essayé le code suivant mais sans résultat :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    QLabel *label = new QLabel(&fenetre);
    label->setPixmap(QPixmap("icone.png"));
    Qu'est ce que je devrais mettre à la place de &fenetre et surtout ou dois-je mettre ce code dans le fichier .cpp ?

    Merci de m'aider

  2. #2
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    17 437
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 17 437
    Points : 43 078
    Points
    43 078
    Par défaut
    Si tu passe &fenetre en paramètre de ton QLabel, cela veut dire que fenêtre est le pointeur vers l'objet père de ton QLabel. Ce père peut être une QWindow, ou tout autre objet Qt pouvant être une "fenêtre" autonome.
    Le code prit tel quel ne compilera pas car &fenetre n'existe pas ( à moins que tu n'es donné qu'un extrait )

    Ton QLabel peut ne pas avoir de père et donc être dans une nouvelle fenêtre. Dans ce cas tu ne lui passes pas de paramètres.
    Par ailleurs, ton QLabel ne va pas être automatiquement affiché, il faut que tu lances la méthode show().

    Voici un code en Qt4 qui est fonctionnel :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    #include <QApplication>
    #include <QtGui>
    #include <QLabel>
     
    int main(int argc, char *argv[])
    {
     
    	QApplication app(argc, argv);
    	QLabel *label = new QLabel();
    	label->setPixmap(QPixmap("icone.png"));
    	label->show();
    	return app.exec();
    }
    Attention, à adapter pour Qt5.

    Je te recommandes de consulter des tutoriaux :

    http://qt.developpez.com/tutoriels/
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur le P2V, mon article sur le cloud
    Consultez nos FAQ : Windows, Linux, Virtualisation

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Mai 2014
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Mai 2014
    Messages : 12
    Points : 9
    Points
    9
    Par défaut
    En fait mon main ressemble à ça :

    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
    16
    17
    18
    #include "speafly.h"
    #include "ui_speafly.h"
    #include "QLabel"
    #include "QPixmap"
     
    speafly::speafly(QWidget *parent) :
        QDialog(parent),
        ui(new Ui::speafly)
    {
        ui->setupUi(this);
     
     
    }
     
    speafly::~speafly()
    {
        delete ui;
    }

    j'ai déjà créé une fenêtre basique, avec Qt designer, et j'ai inséré une image. Quand je compile ça marche mais pas via l'exécutable pourtant les DLL sont bien copiés, donc je me suis dit qu'il faut l'écrire dans le code mais je ne sais pas quoi écrire et malgré les tentatives ça ne marche pas. Vous auriez une solution ?

    P-S : Merci d'avoir répondu !

  4. #4
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    17 437
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 17 437
    Points : 43 078
    Points
    43 078
    Par défaut
    Donc si je comprend bien, ça fonctionne quand tu lance ton appli via l'IDE, mais pas quand tu copie l'exe et les dlls ailleurs. C'est ça ?

    Si c'est ça, tu as probablement un prob. de chemin avec le fichier image.

    Compiles en qDebug et regardes si tu n'a pas des messages d'erreur. Vu que tu ne passes pas de chemin d'accès, l'image doit se trouver dans le même dossier que l'exe.
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur le P2V, mon article sur le cloud
    Consultez nos FAQ : Windows, Linux, Virtualisation

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Mai 2014
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Mai 2014
    Messages : 12
    Points : 9
    Points
    9
    Par défaut
    Bonjour,

    C'est bon j'ai enfin résolu mon problème voilà le code qu'il fallait écrire finalement

    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
    16
    17
    18
    19
    20
    21
    22
     
     
    #include "speafly.h"
    #include "ui_speafly.h"
    #include "QLabel"
    #include "QPixmap"
     
     
    speafly::speafly(QWidget *parent) :
        QDialog(parent),
        ui(new Ui::speafly)
    {
        ui->setupUi(this);
        QPixmap pix("monImage.png");
        ui->label->setPixmap(pix);
     
    }
     
    speafly::~speafly()
    {
        delete ui;
    }

    Lorsque je lance le programme via l'exécutable l'image s'affiche normalement. J'espère que ça aidera !

  6. #6
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    17 437
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 17 437
    Points : 43 078
    Points
    43 078
    Par défaut
    Ah oui, j'avais pas vu le bug.
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur le P2V, mon article sur le cloud
    Consultez nos FAQ : Windows, Linux, Virtualisation

Discussions similaires

  1. Affichage image générée dans h:graphicImage
    Par zatari dans le forum JSF
    Réponses: 0
    Dernier message: 23/08/2011, 16h21
  2. Affichage image .GIF dans fenêtre
    Par ProofOfConcept dans le forum Tkinter
    Réponses: 3
    Dernier message: 28/06/2009, 22h00
  3. probleme affichage image + texte dans table dynamique
    Par battit64 dans le forum ASP.NET
    Réponses: 3
    Dernier message: 18/04/2008, 10h09
  4. Affichage image medical dans Windows Explorer
    Par cheho dans le forum Windows XP
    Réponses: 4
    Dernier message: 21/08/2006, 09h47
  5. [MFC] affichage image caméra dans un projet dialog
    Par Vestaproman dans le forum MFC
    Réponses: 3
    Dernier message: 07/02/2005, 13h27

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