[Qt] Gestion des évènements
kamy86
Messages postés
42
Statut
Membre
-
ftiercel Messages postés 120 Statut Membre -
ftiercel Messages postés 120 Statut Membre -
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!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
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!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
A voir également:
- [Qt] Gestion des évènements
- Logiciel gestion photo gratuit - Guide
- Logiciel gestion locative gratuit excel - Télécharger - Comptabilité & Facturation
- Gestion des fichiers - Télécharger - Gestion de fichiers
- Gestion planning equipe - Télécharger - Outils professionnels
- Gestion autorisation application android - Guide
1 réponse
Ç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 ( https://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)
* 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 ( https://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)