[qt] Problemes d'utilisation de pointer

Arkan -  
 Arkan -
Bonjour, voila je reposte mon problème d'erreur le premier poste étant erronné.

Voici le source:

fichier FctPrg.cpp

FctPrg::FctPrg(QWidget *fenetreP) : QDialog(fenetreP)
{
QDialog *Fenetre2 = new QDialog(fenetreP);
Fenetre2->resize(200,200);
QVBoxLayout *boiteLayout = new QVBoxLayout;
QLabel *image = new QLabel(Fenetre2);
image->setPixmap(QPixmap("\\icone.png");
boiteLayout->addWidget(image);

Fenetre2 ->setLayout(boiteLayout);
Fenetre2->show();
}

Voila, le constructeur mainwindow() crée une instance de FctPrg() en lui donnant en paramettre la fenetre principal. La fenetre dialog souvre bien, mais l'image ne s'affiche pas, s'auriez vous me dire pourquoi?
A voir également:

4 réponses

Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
Déjà il est possible que tu ais une erreur d'ouverture d'image.
Ensuite, tu devrais avoir 2 Dialog de créer.
FctPrg::FctPrg(QWidget *fenetreP) : QDialog(fenetreP)
{
// = new QDialog(fenetreP);//inutile
resize(200,200);
QVBoxLayout *boiteLayout = new QVBoxLayout;
QLabel *image = new QLabel(Fenetre2);
image->setPixmap(QPixmap("\\icone.png");
boiteLayout->addWidget(image);

setLayout(boiteLayout);
show();
} 

Pourquoi mettre un QDialog dans un QDialog ???
0
Arkan
 
Je ne mets pas un QDialog dans un QDialog, je mets un QDialog dans un QWidget, c'est vrai que l'héritage de QDialog ne doit pas y être, mais il est en rien responsable du problème d'image. Il est appeler après grâce a un slot.

Quand a mon image, elle est a la source du source, j'ai testé dans un code de teste (quand je passe sur la pile, l'image s'affiche, mais pas quand je passe par pointer!
0
Arkan
 
PS: d'ailleur meme en l'enlevant ça ne marche pas pour autant!
0
Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
essai de mettre un texte dans le QLabel voir si c'est un problème de chargement (et non d'ouverture) d'image.
image->setPixmap(QPixmap("\\icone.png"); // il manque une paenthèse. erreur de recopie ?
Il est possible qu'il manque un appel à une fonction type paint()...
0
Arkan
 
Oui erreur de recopie, j'ai posté sans le code sous les yeux, suis en stage et j'ai pas le droit d'amener mes documents :)

J'essaye un texte ce soir, je reposterai demain.

Merci String Snipeur ^_^
0