cs_Delphiprog
Messages postés4297Date d'inscriptionsamedi 19 janvier 2002StatutMembreDernière intervention 9 janvier 2013
-
26 sept. 2004 à 23:40
cs_grandvizir
Messages postés1106Date d'inscriptionsamedi 8 novembre 2003StatutMembreDernière intervention 3 septembre 2006
-
29 août 2005 à 13:48
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cs_grandvizir
Messages postés1106Date d'inscriptionsamedi 8 novembre 2003StatutMembreDernière intervention 3 septembre 200622 29 août 2005 à 13:48
Encore mieux: on peut focaliser un TPanel (on ne sait alors plus qui est focalisé).
Form1.ActiveControl:=Panel1;
cs_MAURICIO
Messages postés2106Date d'inscriptionmardi 10 décembre 2002StatutModérateurDernière intervention15 décembre 20145 29 sept. 2004 à 18:30
Si tu veux pas que la touche enter fonctionne sur ton bouton tu peux aussi donner dans l' evenement OnEnter de ton bouton le focus sur un autre composant genre edit1.setfocus ...
cs_Delphiprog
Messages postés4297Date d'inscriptionsamedi 19 janvier 2002StatutMembreDernière intervention 9 janvier 201332 26 sept. 2004 à 23:40
Je n'ai peut-être pas compris l'exposé fait ci-dessus mais le fait de mettre la propriété KeyPreview de la fiche à True fait que les évènement claviers sont interceptés par la fiche avant d'être dispatchés aux contrôles concernés.
Il suffit alors de les traiter au niveau fiche et non au niveau des contrôles.
Au pire, on peut aussi affecter nil au pointeur de méthode d'un contrôle, faire son traitement et restaurer le pointeur de méthode. Exemple :
29 août 2005 à 13:48
Form1.ActiveControl:=Panel1;
29 sept. 2004 à 18:30
26 sept. 2004 à 23:40
Il suffit alors de les traiter au niveau fiche et non au niveau des contrôles.
Au pire, on peut aussi affecter nil au pointeur de méthode d'un contrôle, faire son traitement et restaurer le pointeur de méthode. Exemple :
Button1.OnClick:= nil;
//Traitement quelconque...
Button1.OnClick := Button1Click;