Fermer une fenêtre de form [Résolu]

xt3 23 Messages postés mardi 10 janvier 2006Date d'inscription 13 février 2006 Dernière intervention - 2 févr. 2006 à 11:09 - Dernière réponse : jlen100 1651 Messages postés samedi 10 juillet 2004Date d'inscription 25 juillet 2014 Dernière intervention
- 2 févr. 2006 à 20:59
Salut,

J'ai créer un programme de rapport d'erreurs,je voudrais qu'à la fin du
code la fenetre du code (form) se ferme automatiquement sans avoir a
cliquer sur quoi que ce soit.

Est-ce que quelqu'un aurait une idée ?
Afficher la suite 

13 réponses

Répondre au sujet
jlen100 1651 Messages postés samedi 10 juillet 2004Date d'inscription 25 juillet 2014 Dernière intervention - 2 févr. 2006 à 11:16
+3
Utile
salut,

si j'ai bien compris tu voudrais que ton programme se ferme
automatiquement dans ce cas à la fin du traitement tu mets
Application.terminate;



@+

jlen
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de jlen100
jlen100 1651 Messages postés samedi 10 juillet 2004Date d'inscription 25 juillet 2014 Dernière intervention - 2 févr. 2006 à 14:45
+3
Utile
-->cirec delphi autorise l'uitilsation de Application.terminate voici ce que dit l'aide:

Syntaxe Delphi :



procedure Terminate;



Description



Appelez Terminate pour terminer par programme l'exécution d'une
application. En appelant Terminate au lieu de libérer l'objet
application, vous permettez à l'application de s'arrêter d'une manière
plus ordonnée.



Terminate appelle la fonction PostQuitMessage de l'API Windows pour
effectuer la fermeture de l'application. Terminate n'agit pas
immédiatement.



Terminate est appelée automatiquement quand il y a un message WM_QUIT ou quand la fiche principale est fermée.



il me semble que dans ce cas c'est la meilleure façon bien que form.close fasse la même chose



@+

jlen
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de jlen100
xt3 23 Messages postés mardi 10 janvier 2006Date d'inscription 13 février 2006 Dernière intervention - 2 févr. 2006 à 11:26
0
Utile
Super ça marche !

Merci pour ton aide

@+++
Commenter la réponse de xt3
Cirec 4217 Messages postés vendredi 23 juillet 2004Date d'inscription 3 avril 2018 Dernière intervention - 2 févr. 2006 à 14:34
0
Utile
je pensais qu'il ne fallait pas appeler directement Application.Terminate , pour fermer une form l'instruction Close suffit amplement elle ferme la form courrente et si c'est la form principale dans ce cas c'est l'application qui se ferme

@+
Cirec
Commenter la réponse de Cirec
Cirec 4217 Messages postés vendredi 23 juillet 2004Date d'inscription 3 avril 2018 Dernière intervention - 2 févr. 2006 à 14:53
0
Utile
ah , encore une chose d'appris, je doit confondre avec autre chose puisqu'il me semblait que Terminate n'appelait pas l'évenement OnClose de la Form. Mais il est claire que je suis dans l'erreur.
Merci à toi jlen pour l'information

@+
Cirec
Commenter la réponse de Cirec
jlen100 1651 Messages postés samedi 10 juillet 2004Date d'inscription 25 juillet 2014 Dernière intervention - 2 févr. 2006 à 15:23
0
Utile
pas de quoi.

Chaque jour on apprend tous quelque chose sur ce site!!

je pense que tu confonds avec la methode destroy ou la methode Free (aide delphi:

N'appelez jamais Application.Destroy ou Application.Free. Utilisez à
la place la méthode Terminate de l'application pour terminer
l'application.







@+

jlen
Commenter la réponse de jlen100
Cirec 4217 Messages postés vendredi 23 juillet 2004Date d'inscription 3 avril 2018 Dernière intervention - 2 févr. 2006 à 15:32
0
Utile
Oui c'est possible, il me restait un bout d'information dans la tête, mais j'ai fait une mauvaise association avec.
On a pas fini d'en apprendre et dans tous les domaines et tout au long de notre vie ça au moins j'en suis sûr

@+
Cirec
Commenter la réponse de Cirec
jlen100 1651 Messages postés samedi 10 juillet 2004Date d'inscription 25 juillet 2014 Dernière intervention - 2 févr. 2006 à 15:36
0
Utile
pour citer Jean Gabin dans une chanson : à la fin de sa vie "tout ce que je sais c'est que je ne sais rien"



@+

jlen
Commenter la réponse de jlen100
DeltaFX 459 Messages postés lundi 19 avril 2004Date d'inscription 8 avril 2009 Dernière intervention - 2 févr. 2006 à 20:35
0
Utile
Otez moi d'un doute, si on fait un Application.terminate dans la form principale d'un prog, le OnClose est bien exécuté, ainsi que les OnClose des forms secondaires ?
Commenter la réponse de DeltaFX
Cirec 4217 Messages postés vendredi 23 juillet 2004Date d'inscription 3 avril 2018 Dernière intervention - 2 févr. 2006 à 20:45
0
Utile
Bon

Alors avis à tous ceux qui ont un doute
j'ai fait les testes et Application.Terminate n'appel pas l'évenement OnClose de la Form
Faites le teste vous même si vous mettez dans FormClose un truc du genre SavetoFile où tout autre chose ces commandes là ne seront pas exécutés

@+
Cirec
Commenter la réponse de Cirec
jlen100 1651 Messages postés samedi 10 juillet 2004Date d'inscription 25 juillet 2014 Dernière intervention - 2 févr. 2006 à 20:54
0
Utile
Application .Terminate termine l'appliaction en liberant la mémoire et
les thread en cours mais il n' appelle pas les onclose (c'est le
onclose qui appelle de la form principal qui appelle
Application.Terminate) aps plus que le on close de la form principal
appelle le onclose des form secondaires



@+

jlen
Commenter la réponse de jlen100
Cirec 4217 Messages postés vendredi 23 juillet 2004Date d'inscription 3 avril 2018 Dernière intervention - 2 févr. 2006 à 20:58
0
Utile
ça comfirme donc ce que je disais il est préférable de quitter l'Application avec un simple Close

@+
Cirec
Commenter la réponse de Cirec
jlen100 1651 Messages postés samedi 10 juillet 2004Date d'inscription 25 juillet 2014 Dernière intervention - 2 févr. 2006 à 20:59
0
Utile
pour que les onclose de formes secondaires soient appeler il faut les fermer explicitement par formXX.close

@+

jlen
Commenter la réponse de jlen100

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.