Bonjour tout le monde,

Voici mon problème : j'essaye de créer un modèle MVC et de l'afficher. Pour cela je ne suis pas allé bien loin : j'ai utilisé le modèle fourni dans la base d'exemples Qt (simple tree example).

Lorsque je crée un modèle et une vue dans le main, tout fonctionne à merveille :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;
    w.show();
    TreeModel MyTree1;
    QTreeView View1;
    View1.setModel(&MyTree1);
    View1.show();
    return a.exec();
}
Mon programme affiche ce qui est attendu:
Nom : CaptureMVC.PNG
Affichages : 123
Taille : 3,6 Ko


(J'ai légèrement modifié le constructeur TreeModel par rapport à ce qu'il y a dans la doc pour qu'il contienne toujours ces mêmes informations)



Jusqu'à là pas de problèmes : le problème survient lorsque j'ai envie de réaliser cette vue MVC à partir d'une interface utilisateur. En effet, si dans mon main windows je crée un bouton, avec un slot qui se déclenche lorsque je clique dessus :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
void MainWindow::on_pushButton_clicked()
{   
    TreeModel MyTree1;
    QTreeView View1;
    View1.setModel(&MyTree1);
    View1.show();
    Sleep(1000); // je dois rajouter ce sleep car view 1 est détruit à la sortie de la fonction
 
}
Et bien là figurez vous qu'il ne se passe rien. Je ne comprends pas pourquoi...

Il y a bien une fenêtre qui s'affiche mais avec rien dedans :

Nom : MVC2.png
Affichages : 79
Taille : 2,4 Ko

Avez vous une idée?

Je peux fournir le projet si vous le désirez, mais je ne suis pas sure que cela soit bien utile...

En vous remerciant.