Posez votre question Signaler

[Qt] Gestion des évènements

kamy86 39Messages postés 10 juillet 2008Date d'inscription 17 mai 2010Dernière intervention - Dernière réponse le 21 août 2008 à 10:42
Bonjour,
je debute avec Qt, mais je bloque dans la gestion des evenements, je doit realiser un logiciel de gestion.
comment on fait pour passer d'une fenetre à une autre?
c urgent!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Lire la suite 

[Qt] Gestion des évènements »

1 réponses
Réponse
+3
moins plus
Ça fait un peu de temps que j'ai utilisé Qt mais j'ai encore le code sous les yeux.

* Pour gérer les évènements :

Prend un objet graphique de ton application, par exemple un objet QTextEdit. Cet objet émet une liste déterminée d'évènements listés dans la doc. Pour déclencher l'exécution d'un bout de code à émission de cet évènement, écrit l'instruction suivante :

QObject::connect( &monTextEdit, SIGNAL(textChanged()), &monObjetQuiContientLaMethodeAExecuter, SLOT(laMethodeQueJeVeuxDeclencher()) );

// monTextEdit : l'objet dont je veux gérer un évènement
// textChanged() : l'évènement que j'ai trouvé dans la doc et que je veux gérer
// monObjetQuiContientLaMethodeAExecuter : tout est dit :)
// laMethodeQueJeVeuxDeclencher() : c'est dans cette méthode que j'écris le code que je veux exécuter quand l'évènement se produit


* Pour passer d'une fenêtre à une autre :

Je ne vois pas trop le problème :/ Tu vas instancier deux classes correspondant à des fenêtres. Tu auras un objet, de n'importe quel type, qui sera l'objet utilisé pour gérer les évènements. Dans cet objet, tu mets une référence vers une classe-fenêtre, voir les deux. Ainsi, au déclenchement d'un évènement, quand tu exécutera une des méthodes de cet objet, tu aura à dispo une référence vers la fenêtre que tu veux manipuler.

Je ne mets pas d'exemple de code car ça fait trop longtemps.


* La documentation

Au cas où tu n'aurais pas vu où est la doc ( http://doc.trolltech.com/4.4.0/classes.html ). C'est là que tu piocheras tous les éléments graphiques que tu veux mettre dans tes fenêtres.


* Exemple de codes

Pour chercher du code, tu as Google Search Code ( http://www.google.com/codesearch ), indispensable :) C'est Google version développeurs. Écris lang:"c++" au début de ta requête et il ne te cherchera plus que du code c++.


* Le CRUD

Tu as dit que tu faisais un logiciel de gestion. Alors sans doute tu devras implémenter des CRUDs ( http://en.wikipedia.org/wiki/Create,_read,_update_and_delete#User_interface ). C'est la façon de représenter les données dans une interface graphique la plus recommandée. On peut coder la quasi-totalité d'une application de gestion comme ça. Voici un exemple (en enlevant l'en-tête et la colonne de gauche) :

http://www.zimbra.com/about/_media/zimbra_screen_inbox_large.jpg

Explication : Tu as une page qui représente une liste d'éléments. Le haut contient la liste sous forme de lignes. Le bas affiche UN des éléments.
C comme Création : il faut mettre un bouton pour créer un nouvel élément
R comme Recherche : tu cliques sur un élément et il s'affiche en-dessous
U comme Update (Mettre à jour) : il te faut un bouton dans la partie inférieure pour sauvegarder l'élément affiché
D comme Delete (supprimer) : Sur chaque ligne, tu mets un checkbox pour pouvoir supprimer les éléments

Tu as ainsi les quatre opérations fondamentales pour gérer les données. Tu remarqueras que les CRUD peuvent s'emboiter les uns dans les autres (un pays a une liste de communes qui a une liste d'entreprises qui a une liste d'employés)
Ajouter un commentaire
Ce document intitulé « [Qt] Gestion des évènements » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?