Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1734 connectés 

  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  appeller une procedure Tobject dans une procedure ...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

appeller une procedure Tobject dans une procedure ...

n°440062
piloud
Posté le 26-06-2003 à 12:10:24  profilanswer
 


Voila quand je fait par exemple dans ma procedure ( qui n'est pas une Tobject ) :  
 
buttonClick(sender);
ou form1.ButtonClick(sender);  
 
Il me dit : sender undeclared identifier .  
 
help !

mood
Publicité
Posté le 26-06-2003 à 12:10:24  profilanswer
 

n°440070
KrzAramis
Help Me
Posté le 26-06-2003 à 12:13:04  profilanswer
 

piloud a écrit :


Voila quand je fait par exemple dans ma procedure ( qui n'est pas une Tobject ) :  
 
buttonClick(sender);
ou form1.ButtonClick(sender);  
 
Il me dit : sender undeclared identifier .  
 
help !  


Le bon code c est :

Code :
  1. buttonClick(Self);
  2. ou form1.ButtonClick(Self);


 
normalement il te le propose quand tu fais ctrl + espace  [:ddr555]  
 
@->--


---------------
The Only Way for Evils to Triumph is for Good Men to do Nothing @->-- Cours Réseaux@->-- Mon Site
n°440076
piloud
Posté le 26-06-2003 à 12:15:59  profilanswer
 

ca marche :) !
merci !  
 
 
mais sender marche dans les procedure Tobject

n°440114
antp
Super Administrateur
Champion des excuses bidons
Posté le 26-06-2003 à 12:44:29  profilanswer
 

krzAramis a écrit :


Le bon code c est :

Code :
  1. buttonClick(Self);
  2. ou form1.ButtonClick(Self);




 
le bon code c'est plutôt de passer en sender l'objet sur lequel l'action est effectuée, donc dans ce cas-ci Button plutôt que Self :o


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°440120
KrzAramis
Help Me
Posté le 26-06-2003 à 12:48:36  profilanswer
 

antp a écrit :


 
le bon code c'est plutôt de passer en sender l'objet sur lequel l'action est effectuée, donc dans ce cas-ci Button plutôt que Self :o


T es mechant avec moi en ce moment antp hum ? :??:  
Ca aurai ete cool si tu avais conclu (attention code non verifie):

Code :
  1. buttonClick(TButton);
  2. ou form1.ButtonClick(Tbutton);


 
j ai juste ?
et pourquoi c est mieux ?
 
@->--


---------------
The Only Way for Evils to Triumph is for Good Men to do Nothing @->-- Cours Réseaux@->-- Mon Site
n°440126
antp
Super Administrateur
Champion des excuses bidons
Posté le 26-06-2003 à 12:52:46  profilanswer
 

heu non là tu balances un TClass au lieu d'un TObject :D
 


  buttonClick(Button);  
  ou form1.ButtonClick(Button);


(ou button1 ou autre, le nom du bouton quoi)
 
ceci parce que quand tu lies plusieurs composants à un même événement, il faut bien savoir sur lequel tu as cliqué.
Ici on provoque le clic, mais on veut émuler le clic sur un bouton.
Dans le cas où on aurait un truc du genre :
 
if Sender = Button1 then
 ...
else
if Sender = Button2 then
 ...
 
il vaut mieux passer le bouton plutôt que la Form en paramètre :D


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°440143
KrzAramis
Help Me
Posté le 26-06-2003 à 13:09:02  profilanswer
 

Est ce que ca veut dire que quand je gere des TEdit avec les characteres que je veux pas je peux coder tout dans la procedure et juste adapter en sachant qui est le Sender ! mais c est trop cool !
D habitude je code les evenement un a un !
 
Merci antp
 
@->--
 
PS: je ma plante car pas delphi sous la main :-/


---------------
The Only Way for Evils to Triumph is for Good Men to do Nothing @->-- Cours Réseaux@->-- Mon Site
n°440149
antp
Super Administrateur
Champion des excuses bidons
Posté le 26-06-2003 à 13:14:28  profilanswer
 

ouais tu peux faire un truc genre :
 


if Sender is TEdit then
  with Sender as TEdit do
  begin
    Color := clYellow;
  end;


 
dans un OnEnter relié à tous tes edits, et remettre en clWindow dans le OnExit, pour que l'Edit actif soit en jaune (c'est moche de le faire en clYellow mais c'est juste pour l'exemple :D) , t'auras juste deux procédures pour l'ensemble de tes TEdit ;)


Message édité par antp le 26-06-2003 à 13:15:00

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°440286
zion
Plop
Posté le 26-06-2003 à 14:25:15  profilanswer
 


Etant donné qu'ici c'est d'aucun bouton qu'il clique et si on suit la logique du sender ca aurait du être
 
ButtonClick(nil)
 
[:neowen]


---------------
Informaticien.be - Lancez des défis à vos amis
n°447813
le duke
ça vous dérange si je fume ?
Posté le 03-07-2003 à 17:05:55  profilanswer
 

antp a écrit :

heu non là tu balances un TClass au lieu d'un TObject :D
 


  buttonClick(Button);  
  ou form1.ButtonClick(Button);


(ou button1 ou autre, le nom du bouton quoi)
 
ceci parce que quand tu lies plusieurs composants à un même événement, il faut bien savoir sur lequel tu as cliqué.
Ici on provoque le clic, mais on veut émuler le clic sur un bouton.
Dans le cas où on aurait un truc du genre :
 
if Sender = Button1 then
 ...
else
if Sender = Button2 then
 ...
 
il vaut mieux passer le bouton plutôt que la Form en paramètre :D


 
Ben pk ?  
Self envoie à la procedure le type (voire le nom je sais plus) du sender donc self marche de la même façon que button1 dans ce cas !!!!
 
Après tu prends le sender rentrer en paramètre dans ta procédure et tu fais  
if sender = button1 then ...

mood
Publicité
Posté le 03-07-2003 à 17:05:55  profilanswer
 

n°447842
taureau
Posté le 03-07-2003 à 17:17:21  profilanswer
 

oui sauf que lui il voulait faire : buttonClick(TButton)  ce qui est totalement différent comme l'a dit antp

n°447877
le duke
ça vous dérange si je fume ?
Posté le 03-07-2003 à 17:33:44  profilanswer
 

ah !!
là d'accord !!!  :D


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  appeller une procedure Tobject dans une procedure ...

 

Sujets relatifs
Saisir une valeur dans une procédure stockée oracle[c#] procedure stockée
[Delphi] Recherche désespéremment procédure ALPHA-BETA.....Borland et TObject... (et un peu de pointeurs aussi...)
SQLServer : procedure stockée ou fonction[VB.NET, ASP.NET] Comment appeller un bmp qui se trouve dans une dll ?
Convertir un String en TObject c possible ?Passage erroné d'un tableau de chaînes de caractères à une procédure..
[algo avec alg'exec] j'ai besoin d'aide sur les fonctions et procédureComment appeller une class en PHP ?
Plus de sujets relatifs à : appeller une procedure Tobject dans une procedure ...


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)