Problémz avec les slots qt
Résolu
jrad31
Messages postés
58
Date d'inscription
Statut
Membre
Dernière intervention
-
jrad31 Messages postés 58 Date d'inscription Statut Membre Dernière intervention -
jrad31 Messages postés 58 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Problémz avec les slots qt
- Qt sdk - Télécharger - Langages
- Gametwist slots jeux de casino - Télécharger - Divers Jeux
- Qt web - Télécharger - Navigateurs
- Qt tab bar - Télécharger - Personnalisation
- Free slots gratuit - Télécharger - Arcade
2 réponses
bonjour,
merci votre aide, donc vous voulez que je fait ça :
void Fenpr::on_aide_clicked(){
apropos * fap;
fap->show();
//this.close
}
c'est vrai qu'il y a pas d'erreur de compilation mais lorsque je clique sur le bouton une fenetre d'erreur windows s'affiche :
"test.exe a rencontré un problème et doit fermer. Nous vous prions de nous excuser pour le désagrément encouru. ...Veuillez signaler ce problème à Microsoft..."
c quoi maintenant le pblm!!!
et comment peut on faire pour fermer la fenetre courante !!?
merciii
merci votre aide, donc vous voulez que je fait ça :
void Fenpr::on_aide_clicked(){
apropos * fap;
fap->show();
//this.close
}
c'est vrai qu'il y a pas d'erreur de compilation mais lorsque je clique sur le bouton une fenetre d'erreur windows s'affiche :
"test.exe a rencontré un problème et doit fermer. Nous vous prions de nous excuser pour le désagrément encouru. ...Veuillez signaler ce problème à Microsoft..."
c quoi maintenant le pblm!!!
et comment peut on faire pour fermer la fenetre courante !!?
merciii
Supposons avoir le code:
Fen2 f; crée un objet 'f' en faisant appel au constructeur de 'Fen2'. Cet objet est une variable locale... donc en sortant de la fonction 'on_aide_clicked', l'objet 'f' est détruit en faisant appel à son destructeur... et la fenêtre se ferme. Tout est donc normal.
Moralité: Si tu veux que l'objet soit persistant une fois la fonction terminée, il n'y a que la classique solution de créer un pointeur de type 'Fen2'.
Bonne réflexion.
void Fen1::on_aide_clicked(){ Fen2 f; f.show(); ... }Que se passe-t-il ?
Fen2 f; crée un objet 'f' en faisant appel au constructeur de 'Fen2'. Cet objet est une variable locale... donc en sortant de la fonction 'on_aide_clicked', l'objet 'f' est détruit en faisant appel à son destructeur... et la fenêtre se ferme. Tout est donc normal.
Moralité: Si tu veux que l'objet soit persistant une fois la fonction terminée, il n'y a que la classique solution de créer un pointeur de type 'Fen2'.
Bonne réflexion.
fap->show();
Là encore ce qui se passe est normal.
Tu déclares un pointeur de type 'apropos', mais lorsque que s'exécute l'instruction 'fap->show'... l'objet potentiel que représentait 'fap' n'existe pas, aucune n'instance n'a été créée et le plantage de type 'segment fault, tôt ou tard, est assuré.
Après avoir déclaré que l'on désirait un objet de type 'apropos', il faut absolument, si on désire l'utiliser, déclarer sa concrétisation et le seul moyen d'y parvenir est de demander la construction de cet objet: Ensuite, je ne sais pas ce que tu veux faire, mais tu peux laisser le 'fclose' car l'objet 'fap' continuera d'exister jusqu'à la fin du programme si tu ne lui as pas donné de 'parent'; c'est là une caractéristique de 'Qt', tout objet est détruit au plus tard à la mort de son 'parent'. En général, on ne laisse pas d'objet sans parent, alors autant lui donner, par défaut, l'instance principale comme parent.
Bonne continuation.