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

Discussion :

QWidget qui ne se dessine pas

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2009
    Messages : 6
    Par défaut QWidget qui ne se dessine pas
    Bonjour,

    je rencontre actuellement un problème surement du à mon manque d'expérience dans Qt.

    L'idée part d'un principe simple. je veux a plusieurs instant de mon code moteur affiché un pop-up dont le contenu varie.

    J'ai donc fais une classe qui hérite de QWidget.

    Lorsque basiquement dans le main.cpp je l'instancie et l'affiche. Tout fonctionne correctement. le pop-up s'affiche avec le contenu que je lui ai associé.

    Maintenant, si dans le main.cpp j'instancie une classe ayant aucune relation avec Qt et qu'à l'intérieur j'instancie et j'affiche le même pop-up. Celui si s'affiche mais est vide.

    J'en conclue qu'une relation entre QApplication et QWidget m'échappe.

    Pouvez-vous m'éclairez?

    Merci à vous.

    Ata

  2. #2
    Inactif  


    Homme Profil pro
    Inscrit en
    Novembre 2008
    Messages
    5 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2008
    Messages : 5 288
    Par défaut
    Bonjour Atasuke et bienvenu sur le forum

    Pouvez-vous m'éclairez?
    Il va falloir que tu nous éclaires en premier...

    Qu'affiche ton QWidget ? Comment crée tu ton widget et comment l'affiche tu ? C'est quoi cette "classe ayant aucune relation avec Qt" ? Comment intègres tu le widget dedans ?

    Bref, donnes nous le code qui fonctionne et celui qui ne donne pas le résultat attendu, pour nous aider

  3. #3
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2009
    Messages : 6
    Par défaut
    Citation Envoyé par gbdivers Voir le message
    Bonjour Atasuke et bienvenu sur le forum
    Bonjour et merci :-)

    Alors j'ai une classe Erreur qui hérite de QWidget :

    Erreur.h
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    class Erreur : public QWidget
    {
    	public:
    	    Erreur(char * message);
    	private:
    	    QGridLayout * gridlayout;
    };
    Erreur.cpp
    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
     
    Erreur::Erreur(char * message)
    {
        QString message2(message);
        QLabel * label0 = new QLabel();
        label0->setPixmap(QPixmap("img/erreur.png"));
     
        QLabel * label1 = new QLabel(message2);
        gridlayout = new QGridLayout(this);
     
        gridlayout->addWidget(label1,0,1);
        gridlayout->addWidget(label0,0,0);
     
        this->setLayout(gridlayout);
        this->show();
    }
    D'un autre coté, j'ai une classe loader :

    Loader.h
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    class Loader
    {
    	public:
    	    Loader();
    	    void selectionnerfichierlocal(); 
                void lecture(QString nom);	   
    };
    Loader.cpp
    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
    23
     
     
    Loader::Loader()
    {
    }
     
    void Loader::selectionnerfichierlocal()
    {
        QString nom = QFileDialog::getOpenFileName(0,"Sélectionnez le fichier local à ouvrir", "/home/", "extensions(*.txt)");
        lecture(nom);
    }
     
    void Loader::lecture(QString nom)
    {   
        QFile fichier(nom);
        if (!fichier.open(QIODevice::ReadOnly | QIODevice::Text))
        {
             //traitement
        }
        else
        {
              Erreur e2("test2");
        }

    Rien de compliqué donc, juste :
    - un QWidget qui affiche un message qu'on lui passe en paramètre
    - une classe qui tente d'ouvrir un fichier et qui lorsqu'elle n'y arrive pas, instancie la classe Erreur.

    Dans le main.cpp lorsque je fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    QApplication app(argc, argv);
    Erreur e2("test1");
    Loader * l = new Loader();
    l->selectionnerfichierlocal();
    return app.exec();
    2 fenêtres s'affichent. L'une contient le message "test1" + une image et l'autre est vide.
    Du coup, je suis un peu dans le flou.

    La réponse est je pense pas compliquée, mais je ne la trouve pas lol.

    edit : en faisant hériter loader de QObject la deuxième fenêtre s'affiche normalement.
    La solution me plait qu'a moitié mais à default, je m'en satisferai.

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

Discussions similaires

  1. DBgrids qui ne se dessine pas
    Par JP.NUAGE dans le forum Débuter
    Réponses: 5
    Dernier message: 06/06/2012, 08h22
  2. interface qui ne se dessine pas?
    Par altadeos dans le forum Interfaces Graphiques en Java
    Réponses: 0
    Dernier message: 26/03/2009, 22h01
  3. Image qui ne se dessine pas au chargement de l'appli
    Par lionrouge dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 05/06/2006, 09h05
  4. [Dessin]Image qui ne s'enleve pas
    Par ehmppowa dans le forum 2D
    Réponses: 4
    Dernier message: 28/03/2006, 11h39
  5. [D7-EXCEL2000] Formule dans cellule Excel qui ne se calcule pas
    Par Albertolino dans le forum API, COM et SDKs
    Réponses: 3
    Dernier message: 09/09/2003, 14h18

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