Intéragir dans une autre Form ???

cs_adri1 Messages postés 6 Date d'inscription samedi 16 novembre 2002 Statut Membre Dernière intervention 28 novembre 2002 - 17 nov. 2002 à 23:14
Hy0Ga Messages postés 7 Date d'inscription lundi 4 novembre 2002 Statut Membre Dernière intervention 22 janvier 2003 - 18 nov. 2002 à 21:03
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

Hy0Ga Messages postés 7 Date d'inscription lundi 4 novembre 2002 Statut Membre Dernière intervention 22 janvier 2003
18 nov. 2002 à 21:03
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 -
-----------------------------------
0
Rejoignez-nous