[RichTextBox]Recuperation de la ligne et de la colonne en cours [Résolu]

cs_ip2x 64 Messages postés mercredi 9 février 2005Date d'inscription 27 janvier 2009 Dernière intervention - 8 nov. 2006 à 10:58 - Dernière réponse : cs_ip2x 64 Messages postés mercredi 9 février 2005Date d'inscription 27 janvier 2009 Dernière intervention
- 9 nov. 2006 à 00:33
Bonjour,

je developpe un "parser" XML a l'aide d'une RichTextBox et je voudrais, pour des soucis d'ergonomie, afficher la position du curseur (Ligne, Colonne) dans la barre d'etat de mon formulaire...

Quelqu'un aurait-il un algo qui traine
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
cs_Bidou 5507 Messages postés dimanche 4 août 2002Date d'inscription 20 juin 2013 Dernière intervention - 8 nov. 2006 à 15:06
3
Merci
Salut,
La richtextbox met des méthodes à disposition qui devrait t'aider. Jette un oeil du côté de

GetCharIndexFromPosition();
GetFirstCharIndexOfCurrentLine();

<hr size="2" />-Blog-

Merci cs_Bidou 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 125 internautes ce mois-ci

Commenter la réponse de cs_Bidou
Meilleure réponse
cs_ip2x 64 Messages postés mercredi 9 février 2005Date d'inscription 27 janvier 2009 Dernière intervention - 9 nov. 2006 à 00:33
3
Merci
Oui aprés un aprés-midi acharnée j'ai trouvé cette solution :
private void mettreAJourStatusBar()
        {
            //Recuperation de l'index du curseur dans tout le document
            int position = this.richTextBoxAfficherXML.SelectionStart;
            
            //Initialisation de la valeur de la colonne
            int col = 0;

            //Recuperation de la ligne a laquelle le curseur se trouve
            //a partir de l'index de celui-ci
            int lin = this.richTextBoxAfficherXML.GetLineFromCharIndex(position) +1; 
            
            try
            {   
                col = position -this.richTextBoxAfficherXML.Text.LastIndexOf(System.Convert.ToChar(10), position - 1) - 1;
            }
            catch
            {
                col +=1;
            }

            //Affichage final
            this.toolStripStatusLabelNbChar.Text    = "| nbchar " + this.richTextBoxAfficherXML.Text.Length.ToString();
            this.toolStripStatusLabelLIGNES.Text    = "| Ln " + lin;
            this.toolStripStatusLabelCOLONNES.Text  = "Col " + col;
            this.toolStripStatusLabelSELECTED.Text  = "| Sel " + this.richTextBoxAfficherXML.SelectedText.Length;
        }


J'espere que ça aidera quelqu'un

Merci cs_ip2x 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 125 internautes ce mois-ci

Commenter la réponse de cs_ip2x

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.