2010-07-01 5 views
5

Le cas est la suivante:Les meilleures pratiques pour une application Qt avec plusieurs interfaces en C++

Vous avez une fenêtre principale (ui1) qui doit contenir deux autres interfaces (UE2 et UE3). Ni ui2 ni ui3 ne se soucient d'autres uis. Ils ont seulement des créneaux pour réagir, et ils peuvent aussi émettre des signaux. Voir dessin ci-dessous.

+----------------------------+ 
| +------+  +------+ | 
| |  |  |  | | 
| |  |  |  | | 
| |  |  |  | | 
| | ui2|  | ui3| | 
| +------+  +------+ | 
|       | 
|      ui1 | 
+----------------------------+ 

ui1 est chargé par classe APPWINDOW et est utilisé comme ceci:

... 
int main(int argc, char *argv[]) 
{ 
    CustomApp app(argc,argv); 

    AppWindow w; 
    w.show(); 

    return app.exec(); 
} 

Quelle est une méthode recommandée pour créer la classe APPWINDOW? Un exemple simple?

Merci

Répondre

7

Lors de la création ui1, faites glisser deux widgets de base (à savoir QWidget) dans l'interface utilisateur. Ensuite, dans le concepteur, vous pouvez faire un clic droit et choisir Promote To .... Dans cette boîte de dialogue, spécifiez le "Nom de la classe sponsorisée" et le "Fichier d'en-tête" correspondant à ui2 et ui3.

Vous ne pourrez pas voir un aperçu en direct en utilisant cette méthode, mais quand l'en-tête et le nom de la classe sont correctement spécifiés, il compilera et correctement.

Questions connexes