Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

COMPOSANT EDIT PERMETTANT DE SAVOIR QUI A MODIFIE LE TEXTE DANS LE ONCHANGE


Information sur la source

Description

Ce composant permet de connaitre la source de l'evennement OnChange (provoque par une modification de l'utilisateur ou par le code).
Il propose 3 evenements :
OnUserChange est appelé lors d'une modification par l'utilisateur
OnCodeChange est appelé lors d'une modification par le code
OnChange qui est appelé lors de toute modification et qui precise la source (Event spécial)
Son utilisation est assez simple, un projet d'exemple est fourni avec.
Le composant est ajouté à la palette "Edits".

Si vous avez des questions ...
 

Conclusion

j'ai relaisé ce composant par rapport à un sujet du forum :
http://www.delphifr.com/infomsg_CONNAITRE-ORIGINE-ACTION-SUR-COMPOSANT-UTILISATEUR-OU-CODE_829669.aspx
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Commentaires et avis

signaler à un administrateur
Commentaire de JulioDelphi le 20/10/2006 14:49:29 administrateur CS

fonctionne tres bien, super utile ce genre de compo :D
bravo

signaler à un administrateur
Commentaire de Delphiprog le 21/10/2006 22:31:18 administrateur CS

Il y a un petit point qui me gêne. Si l'on assigne une méthode à OnChange et à OnUserChange (ou à OnChange et à OnCodeChange), alors ces deux routines seront appelées. Est-ce volontaire ou bien il manque un "else" quelque part ?

signaler à un administrateur
Commentaire de Guillemouze le 21/10/2006 23:09:06

non c'est bien volontaire.
En fait a la bas je suis parti uniquement sur les methodes propores à chaque source. Mais ensuite, je me suis dit que certains veulent peut etre plus faire un seul traitement avec quelques differences selon la source, comme par exemple:

Edit1Change(Sender: TObject; UserEdit: Boolean);
begin
  if UserEdit then blablabla
  //du code commun aux deux
  if not UserEdit bliblibli
  //du code commun aux deux
  ...
end;

c'est pour cela que j'ai implémenté la deuxième façon de proceder. il est donc preferable de ne pas melanger l'utilisation de ces 2 methodes, a moins d'etre sur de ce que l'on fait.
si on regarde le code, on voit bien que la methode OnChange est appelée avant les methodes OnUser/CodeChange. Donc il est possible de faire un traitement commun avant le traitement specifique.
Il est aussi possible de creer un evenement du style Before et After pour l'event commun.
Je pense qu'il est tout simplement plus simple de ne pas melanger les appels, mais je n'ai pas voulu le bloquer car quelqun qui sait quel est le processus d'appel peut en jouer.

desolé à ceux qui lise ce message, j'ai l'impression d'avoir dit 10 fois la meme chose de manieres differentes :$

signaler à un administrateur
Commentaire de f0xi le 23/10/2006 06:20:31 administrateur CS





on peu reduire les conditions

procedure TUserEdit.Change;
begin
  inherited;
  if Assigned(FOnChange) then
    FOnChange(self, FUserEditing);

  case FUserEditing of
    false: if Assigned(FOnCodeChange) then FOnCodeChange(self);
    true : if Assigned(FOnUserChange) then FOnUserChange(self);
  end;
end;


on ne mets pas a nil les gestionnaire d'evenements!

constructor TUserEdit.Create(AOwner: Tcomponent);
begin
  inherited;
  FUserEditing := true;
end;


Set et Get doivent etre dans private et non dans protected.

signaler à un administrateur
Commentaire de Guillemouze le 23/10/2006 11:56:52

pourquoi on ne met pas a nil les gestionnaires d'evenements?

signaler à un administrateur
Commentaire de Delphiprog le 23/10/2006 17:22:01 administrateur CS

Parce que c'est inutile, cela est fait d'emblée : tout référent est automatiquement initialisé à Nil.
Ce n'est pas une faute, c'est seulement inutile...

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Extraire des tags HTML [ par BinOff ] Voilà, je commence avec un fichier HTML ouvert en tant que source dans un memo1.Je souhaiterais extraire les noms des images incluses dans le source H Problème lors de modification ! [ par Technoman ] Lorsque je veux modifier une table, j' obtiens ce message d' erreur : Edition impossible car un autre utilisateur a modifie l' enregistrement. Je fais algorithme genetique code source [ par nana ] je cherche le code source et le programme d'un algorithme génétique pour le problème de TSP ( de préférence en pascal, delphi, fortran sinon autres la Jeu avec le source [ par Synthox ] Si ca vous dis de faire un jeu de carte, je vous met mes sources en telechargement sur mon site, il contiens aussi un fichier RES avec les cartes de t Les notes... Pour Nix [ par Bestiol ] Hello Nix !!Tout d'abord, félicitations pour ton réseau de sites, c'est super !!Mais j'ai juste une petite remarque : A quoi servent les notes des sou Mon premier ajout de source !! :o) [ par XJapan ] Voila !!!!! J'ai deposer ma premiere Source !!!!!! :o))))))Mais je me demande si y a pas un soucie avec l'envoie de fichier zip... Parce k'il n'est pa Tag HTML avec edit ou richedit [ par sebrs1 ] Connaissez-vous un composant comme richedit ou edit qui execute les code html???merci d'avance@+Sebrs1 Problème concaténation [ par bassman64 ] Alors voila ...J'ai un problème de concaténation :For i:=1 to 12 do begin Edit(i).caption := Button(i).text; end;avec le Edit(i).caption := Button( restructurer un fichier source [ par djam18 ] Salutje recherche un algorithme qui permettrait d'afficher une instruction par ligne d'un fichier source.Je m'explique :)j'ai un fichier source ecrit filtrer un edit [ par crogger ] salut, comment puis-je " filtrer" le texte tapé dans un edit...je voudrais que l'on puis uniquement y taper des chiffres et surtout pas de lettres...p


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,640 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.