Bonjour à tous,
je suis débutant en Qt et je suis en train de faire une interface simple composée d'un QGridLayout. J'ai fais une repartition et réservé une zone de 4lignes et 5Colonnes pour y insérer une image ou un texte.
Initialement, j'ai inclu dans cette zone un QLabel et tout à marcher parfaitement. Mais après j'ai voulu y avoir plusieurs onglets et ma première idée fût d' ajouter un QTabWidget. Pour cela voilà le bout de code que j'ai rajouté au code qui fonctionnait bien:
auparavant sans le QTabWidget j'avais à la place de la seconde ligne rouge du bout de code précédent:
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 //Partie réservée à l'affichage de l'image QTabWidget *onglets; textImage = new QLabel("<center><i><h1>Bonjour a tous !<h1/><i/><center/> <br/><center> <h2>Bienvenue sur l'application<h2/><center/>"); textImage->setFrameShape(QFrame::StyledPanel); //Repartition en coordonnées des composants de la fenetre layout = new QGridLayout; layout->addWidget(ouvrirImage, 0, 0); layout->addWidget(preTraitement, 1, 0); layout->addWidget(filtre, 2, 0); layout->addWidget(seuil, 3, 0); layout->addWidget(appliquer, 4, 5); layout->addWidget(enregistrerImage, 4, 6); layout->addWidget(onglets, 0, 2, 4, 5); onglets->addTab(textImage, "Presentation");
Voici le résultat de la compilation:
Code : Sélectionner tout - Visualiser dans une fenêtre à part layout->addWidget(textImage, 0, 2, 4, 5);
Et j'ai foncé tête baissée pour l'execution et malheureusement j'ai eu une erreur de segmentation.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Fenetre.cpp:57: warning: onglets may be used uninitialized in this function Fenetre.cpp: In constructor Fenetre::Fenetre(): Fenetre.cpp:57: warning: onglets may be used uninitialized in this function g++ -Wl,-O1 -o Qtproject Fenetre.o qt1.o moc_Fenetre.o -L/usr/lib -lQtGui -lQtCore -lpthread
Je n'ai pas saisi le problème de l'initialisation évoqué par le compilateur!
J'aimerais avoir vos avis concernant ce qui ne va pas exactement.
Merci d'avance.
Cordialement.
Partager