Intéragir dans une autre Form ???

Signaler
Messages postés
6
Date d'inscription
samedi 16 novembre 2002
Statut
Membre
Dernière intervention
28 novembre 2002
-
Messages postés
7
Date d'inscription
lundi 4 novembre 2002
Statut
Membre
Dernière intervention
22 janvier 2003
-
Bonjour,

En fait pour supprimer le ALT+F4 j'ai mis:

procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
CanClose:=FALSE;
end;

Ce qui fonctionne bien, mais à partir de la Form3 j'aimerais désactiver cette option...
Comment puis-je faire svp ?
Merci.
adri1

1 réponse

Messages postés
7
Date d'inscription
lundi 4 novembre 2002
Statut
Membre
Dernière intervention
22 janvier 2003

moi je ferai comme ca : je créerai la procedure suivante dans ma Form principale :

function TryClose(Sender:TObject; State:TShiftState; Key:Word ): Word;
begin
if (Key = VK_F4) and (ssAlt in State) then begin
if (Sender <> Form1) and (Sender <> Form2) then
Result := Word(VK_F4);
end else
Result := Word(#0);
end;

et ensuite dans l'événement OnKeyDown des autre form tu met :

Key := MaFormPrincipale.TryClose(self,Shift,Key)

Dans cette procedure, si ce n'est pas form1 ou form2 l'appelant, ALT F4 marchera sinon ALT+F4 sera désactivé

si tu as des question, n'hesite pas

-----------------------------------
Que la force soit avec nous -
-----------------------------------