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

  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  determiner les ligne visible ds un RichEdit

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

determiner les ligne visible ds un RichEdit

n°215901
hhf
Posté le 17-09-2002 à 19:41:54  profilanswer
 

salut, je charge un fichier dans un RichEdit, Je veux faire des traitement de mise en forme coloration syntaxique etc...
Mais les traitement sont trop long si je le fait sur tous le fichier bien sur, je veux faire les traitements que sur la parties visible du fichier (la page courante) qui à une idee pour determiner les lignes visible en cours ?
sans passer par la position du point d'insertion ki peut etre en dehors de la partie visible.
Merci.

mood
Publicité
Posté le 17-09-2002 à 19:41:54  profilanswer
 

n°215930
[SDF]Poire
Vive Grumly
Posté le 17-09-2002 à 20:44:34  profilanswer
 

Fait une petite recherche il y a beaucoup de topic traitant du richedit
 
 :hello:


---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
n°215939
hhf
Posté le 17-09-2002 à 21:00:58  profilanswer
 

je cherche, je cherche, je post la soluce si je la trouve. Mais si quelqu'un à la soluce avant...
Ben pas trouvé....
alors a votre bon coeur...


Message édité par hhf le 17-09-2002 à 21:18:36
n°216008
hhf
Posté le 17-09-2002 à 23:25:43  profilanswer
 

bon voila ce que j'ai trouvé avec l'aide API Win32.
J'ai fait ca à l'arrache :

Code :
  1. procedure TForm1.Button2Click(Sender: TObject);
  2. var   FoundAt: LongInt;
  3.       StartPos, ToEnd, PosActu, Fin: Integer;
  4. begin
  5. with RichEdit1 do
  6. begin
  7.    SetFocus;
  8.    PosActu:=SelStart;
  9.    StartPos:=perform(EM_LINEINDEX,perform(EM_GETFIRSTVISIBLELINE,0,0),0);
  10.    Fin:=StartPos+400;
  11.    FoundAt := FindText('t',StartPos,Fin, [stMatchCase]);
  12.    while FoundAt <> -1 do
  13.    begin
  14.       SelStart:=FoundAt;
  15.       SelLength:=length('t');
  16.       SelAttributes.Color:=clRed;
  17.       FoundAt := FindText('t',FoundAt+length('t'),Fin-FoundAt, [stMatchCase]);
  18.    end;
  19.    SelStart:=PosActu;
  20. end;
  21. end;


Donc là ça coloris tous les 't' en rouge des 400 premiers caracteres du texte visible dans un RichEdit. Voila si quelqu'un à une idee mieux... je suis preneur.
Evidement le truc c'est d'avoir aussi via le mm procedé la fin du texte visible.


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

  determiner les ligne visible ds un RichEdit

 

Sujets relatifs
ASP.NET Compteur d'utilisateur en ligne.[gethostname] determiner son IP
Trouver un numero de ligne dans MySQLAlterner la couleur d'une cellule d'une ligne a l'autre ( comme ici )
Proble de retour a la ligne dans formulaire PHP pour MySQL ?[INFO] Livres en ligne
retour à la ligne[PHP] Comment virer le saut de ligne qd on affiche une variable ?
comment détecter un retour à la ligne?[c++] macro sur plsu d'une ligne
Plus de sujets relatifs à : determiner les ligne visible ds un RichEdit


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR