IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 Delphi Discussion :

Numéro de ligne à partir de la position


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 47
    Par défaut Numéro de ligne à partir de la position
    Bonjour,

    J'effectue actuellement une recherche dans une TRichEdit, j'utilise la fonction FindText de celle ci, qui me retourne la position du caractère ...
    Je voudrais savoir si il y avait une fonction permettant de convertir cette position en numéro de ligne ?

    Merci

  2. #2
    Membre éclairé
    Homme Profil pro
    Enseignant
    Inscrit en
    Août 2008
    Messages
    668
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 668
    Par défaut
    Citation Envoyé par dadouuuu Voir le message
    Bonjour,

    J'effectue actuellement une recherche dans une TRichEdit, j'utilise la fonction FindText de celle ci, qui me retourne la position du caractère ...
    Je voudrais savoir si il y avait une fonction permettant de convertir cette position en numéro de ligne ?

    Merci
    Bonjour,

    Pour la recherche dans un TRichEdit, tu as dit que tu utilisé la fonction "FindText":
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    function Rechercher_Texte_et_le_selectionner(RichEdit: TRichEdit; SearchText: string): boolean;
    var
      startpos, position, endpos: integer;
    begin
      startpos := 0;
      with RichEdit do
        begin
        endpos := Length(RichEdit.Text);
        Lines.BeginUpdate;
        while FindText(SearchText, startpos, endpos, [stMatchCase])<>-1 do
        begin
          endpos := Length(RichEdit.Text) - startpos;
          position := FindText(SearchText, startpos, endpos, [stMatchCase]); 
          Inc(startpos, Length(SearchText)); 
          SetFocus;
          SelStart := position;
          SelLength := Length(SearchText); 
        end; 
        Lines.EndUpdate;
      end;
    end;
    alors, tu peux récupérer le n° de la ligne comme ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    Rechercher_Texte_et_le_selectionner(RichEdit1, Edit2.Text) ;
    //Edit2 sert pour la recherche dans le RichEdit1
    Edit1.Text:=inttostr(RichEdit1.Perform(EM_LINEFROMCHAR,RichEdit1.SelStart,1)) ;
    //Edit1 sert à afficher le n° de la ligne
    end;
    A+

    NABIL74

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Récupérer le numéro de ligne d'une cellule à partir d'une autre
    Par adknou dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 06/06/2014, 15h50
  2. [XL-2010] demarrer un code à partir d'un numéro de ligne
    Par Naoned005 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 20/08/2012, 18h02
  3. Récupérer la méthode à partir du numéro de ligne
    Par yassirjanati dans le forum Eclipse Platform
    Réponses: 6
    Dernier message: 12/09/2011, 16h05
  4. [DomAST] Numéro de ligne d'un noeud
    Par Satch dans le forum Eclipse Platform
    Réponses: 1
    Dernier message: 30/03/2004, 10h15
  5. [JSP] Affichage numéro de ligne d'une exception
    Par PhoneKilleR dans le forum Servlets/JSP
    Réponses: 12
    Dernier message: 23/09/2003, 14h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo