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

Lazarus Pascal Discussion :

Position de la souris dans un TMemo


Sujet :

Lazarus Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite
    Avatar de ChPr
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    2 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : France, Val d'Oise (Île de France)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 122
    Par défaut Position de la souris dans un TMemo
    Bonjour à toutes et à tous,

    Il me semble avoir vu, mais je n'arrive pas à retrouver comment convertir la position de la souris (X, Y en pixels) en position curseur (Y = N° de ligne et X = N° du caractère depuis le début de la ligne).

    Merci de votre aide.

    Pierre

  2. #2
    Membre émérite
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2010
    Messages
    469
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2010
    Messages : 469
    Par défaut
    Bonjour

    SelStart donne la position du curseur dans la chaine, sans donner directement le numéro de ligne.

    Si c'est indispensable, on peut assez facilement recalculer l'indice de la ligne, au moins en itérant sur les Lines, à moins qu'il existe une fonction que j'ignore.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    procedure TForm10.Memo1MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    begin
       showmessage(inttostr(Memo1.SelStart));
    end;

  3. #3
    Membre émérite
    Avatar de ChPr
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    2 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : France, Val d'Oise (Île de France)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 122
    Par défaut
    Citation Envoyé par tintinux Voir le message
    ... SelStart donne la position du curseur dans la chaine, sans donner directement le numéro de ligne....
    Le problème est que je veux être indépendant de la position du curseur texte.

    En fait, ce que je souhaiterais faire est la chose suivante: dans un lzRichEdit ( descendant de TMemo), je voudrais que lorsque la souris passe au-dessus d'un texte particulier ( une URL par exemple), le curseur de la souris change de forme. Ensuite, si je clique sur ce texte, une action particulière se passe (ouverture du lien dans un navigateur dans le cas d'un URL).

    Bien sûr, quelque soit la position du curseur de texte.

    NOTA, cette fonction doit exister de manière intrinsèque. En effet, le curseur texte étant à un endroit donné, si on amène la souris à un autre endroit et que l'on clique à cet endroit, le curseur texte y va. Il se passe donc bien une conversion du point X,Y en pixels de la souris en position LC (Ligne, Caractère) du texte.

    Cordialement.

    Pierre

  4. #4
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 940
    Billets dans le blog
    6
    Par défaut
    http://www.developpez.net/forums/d24...o/#post1545675 donne une piste, mais n'est peut-être pas portable en dehors de Windows
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  5. #5
    Membre émérite
    Avatar de ChPr
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    2 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : France, Val d'Oise (Île de France)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 122
    Par défaut
    Merci tourlourou pour ce lien.

    Je l'avais déjà vu et j'avais appliqué ce qu'il propose: ça ne fonctionne pas sous Windows, pas plus sous Linux.

    Merci quand même .

    Cordialement.

    Pierre

  6. #6
    Expert confirmé
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    11 159
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 11 159
    Par défaut
    Citation Envoyé par ChPr Voir le message
    (...) ça ne fonctionne pas sous Windows, (...)
    Effectivement, j'ai essayé aussi, et c'est un peu n'importe quoi comme indications affichées, surtout si on se déplace avec les flèches...

    Maintenant, pour répondre à ta question d'origine (URL cliquable dans un RichEdit), tu devrais jeter un œil ici, ça a l'air de faire ce que tu veux !

    Je ne peux pas tester, je n'ai pas le composant installé

Discussions similaires

  1. Réponses: 3
    Dernier message: 23/11/2010, 17h13
  2. position due la souris dans le richtextbox
    Par TaymouWan dans le forum Windows Forms
    Réponses: 11
    Dernier message: 01/04/2009, 15h40
  3. Détecter la position de la souris dans une fonction
    Par polemoss dans le forum jQuery
    Réponses: 5
    Dernier message: 19/03/2009, 09h28
  4. Position de la souris dans un Memo
    Par greg778 dans le forum Delphi
    Réponses: 17
    Dernier message: 27/11/2006, 21h32
  5. Position de la souris dans une form
    Par planetevoyage dans le forum Delphi
    Réponses: 3
    Dernier message: 12/10/2006, 10h39

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