Activer désactiver une form

THYNOORD
Messages postés
5
Date d'inscription
dimanche 27 janvier 2008
Statut
Membre
Dernière intervention
5 juillet 2008
- 5 juil. 2008 à 14:52
nethacker
Messages postés
288
Date d'inscription
mardi 2 mai 2006
Statut
Membre
Dernière intervention
12 octobre 2011
- 6 juil. 2008 à 14:13
Dans un petit projet je dois lancer un autre programme (donc dans une autre fenêtre) en cliquant sur un bouton. Je souhaiterai, tout en laissant mon application visible à l'écran, empêcher qu'elle ne reçoive les clics de souris tout le temps de l'exécution de l'autre programme. Genre:

MaForm.Enabled := false;
ExecuteEtAttendFin(programme externe);
MaForm.Enabled := true;

Ca marche mais en fait, si je clique sur un bouton de la form disabled, rien ne se passe tant que l'autre programme est en cours d'exécution mais dès que le programme externe se termine, mon application exécute les actions correspondant aux clics ayant eu lieu alors que la form était disabled !!! ??? !!! Comment pouvoir éviter cela ?... Je dois préciser que je souhaiterais de la même manière éviter que le clic sur le bouton "fermer" de la barre de titre (alors que la form est disabled) ne ferme mon application quand le programme externe se termine !...

Cette question est probablement bête et simpliste mais je me casse la tête depuis un certain temps sans trouver de solution !!! Merci pour votre aide et à bientôt...

SLT, THYNOORD

2 réponses

f0xi
Messages postés
4205
Date d'inscription
samedi 16 octobre 2004
Statut
Modérateur
Dernière intervention
12 mars 2022
37
5 juil. 2008 à 14:56
affiche l'autre programme en MODAL, ou tout simplement, minimise ton appli quand l'autre programme est executé.

sinon comment ouvre tu l'autre programme ?

0
nethacker
Messages postés
288
Date d'inscription
mardi 2 mai 2006
Statut
Membre
Dernière intervention
12 octobre 2011

6 juil. 2008 à 14:13
Ca marche mais en fait, si je clique sur un bouton de la form disabled,
rien ne se passe tant que l'autre programme est en cours d'exécution
mais dès que le programme externe se termine, mon application exécute
les actions correspondant aux clics ayant eu lieu alors que la form
était disabled !!! ??? !!


Regarde bien ton code !
MaForm.Enabled := false;  // Activer
ExecuteEtAttendFin(programme externe); // Executer attendre la fin et apres
MaForm.Enabled := true; // Desactiver

Donc si tu veux qu'elle reste "Disabled" enleve la derniere ligne ! sinon je comprend que tu veux que quand l'autre programme se termine ton application se ferme dans ce cas pas la peine de "Desactiver" , execute le programme externe et ferme ton programme !

Comment pouvoir éviter cela ?... Je dois préciser que je souhaiterais de
la même manière éviter que le clic sur le bouton "fermer" de la barre
de titre (alors que la form est disabled) ne ferme mon application
quand le programme externe se termine !...

Sinon pour enlever le bouton fermer :
Regarde les propriétés "Bordericons" et "borderstyle" il suffit de changer "bordericons" mais n'empeche de regarder l'effet de "borderstyle"
0