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

Composants VCL Delphi Discussion :

TRichEdit Position du caret


Sujet :

Composants VCL Delphi

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 5
    Points : 3
    Points
    3
    Par défaut TRichEdit Position du caret
    La question a déjà été posée par quelqu'un d'autre, mais j'ai pas trouvé de réponse...

    Alors voila, nouvel essai!
    : Je voudrais récupérer la position du curseur dans un TRichEdit. Pas le numéro de ligne ni de colonne mais la position par rapport à RichEdit.left et RichEdit.top ou quelque chose du genre...

    Grand merci a qui trouvera un moyen de le faire!

  2. #2

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Non, c'est pas du tout ca...
    Je veux récupérer les coordonnées du curseur par rapport au coin supérieur gauche du TRichEdit. Des coordonnées en pixel et non en lignes ou colonnes ou nombre de caractères...
    Je veux pouvoir afficher un composant juste en dessous du curseur.
    Il faudrait que je puisse faire un truc du style:

    MonComposant.Top:=RichEdit.Curseur.Top+10;
    MonComposant.Left:=RichEdit.Curseur.Left

    Mais je ne sais pas comment faire un truc comme ca...

  4. #4
    Membre chevronné
    Avatar de Pierre Castelain
    Inscrit en
    Avril 2002
    Messages
    523
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 523
    Points : 1 943
    Points
    1 943
    Par défaut
    Il faut utiliser la fonction GetCursorPos pour obtenir la position du curseur sur l'écran et convertir celle-ci en coordonnées spécifiques au TRichEdit par un appel à la méthode ScreenToClient de celui-ci.

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Merci mais il me semble que GetCursorPos retourne la position du curseur de la souris et non, la position du curseur "clavier" dans le TRichEdit...

    A moins de l'avoir mal utiliser...

  6. #6
    Membre chevronné
    Avatar de Pierre Castelain
    Inscrit en
    Avril 2002
    Messages
    523
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 523
    Points : 1 943
    Points
    1 943
    Par défaut
    Oui effectivement je pensais que nous parlions du curseur et non du caret.
    Voici une méthode pour obtenir les coordonnées du caret:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function GetCaretCoordinates(ARichEdit: TRichEdit): TPoint;
    begin
      ARichEdit.Perform(EM_POSFROMCHAR, Integer(@result), ARichEdit.SelStart);
    end;

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Alors là, super génial.... comme on dit!
    C'est exactement ce qu'il me fallait!
    Grand merci, je vais enfin pouvoir avancer...

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

Discussions similaires

  1. [CKEditor] Récupérer la position du caret ?
    Par tintin72 dans le forum Bibliothèques & Frameworks
    Réponses: 0
    Dernier message: 23/03/2010, 08h58
  2. Réponses: 0
    Dernier message: 09/03/2009, 23h45
  3. Position du caret, à l'écran
    Par Veler dans le forum VB.NET
    Réponses: 10
    Dernier message: 22/07/2008, 11h08
  4. Réponses: 1
    Dernier message: 20/02/2008, 12h41
  5. Position du caret avec insertString() de PlainDocument
    Par trash41 dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 14/04/2007, 11h42

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