begin process at 2010 02 10 10:20:21
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

Texte

 > 

Comment connaitre la première ligne visible dans une richtextbox


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Comment connaitre la première ligne visible dans une richtextbox

samedi 28 mai 2005 à 21:26:09 | Comment connaitre la première ligne visible dans une richtextbox

pazgal

Bonsoir à tous,

Je cherche à faire un éditeur PHP. J'aimerais bien numéroter les lignes de ma richtextbox mais mon problème est que je ne sais pas quelle est la première ligne visible (lorsque l'on scroll)

Merci d'avance pour votre précieuse aide.
Pazgal

dimanche 29 mai 2005 à 02:08:21 | Re : Comment connaitre la première ligne visible dans une richtextbox

jack

Administrateur CodeS-SourceS

Salut
J'ai été confronté à cette question récemment pour retrouver le texte sous la souris.
Je te l'ai aménagé pour répondre à ta question :

-1- Supposons que le RichTextBox s'appelle  rtfText
-2- Dans la partie déclaration de ton code :
Option Explicit
Private Type PointApi
    x As Long
    y As Long
End Type
Private Const EM_CHARFROMPOS As Long = &HD7
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" ( _
                                    ByVal hWnd As Long, _
                                    ByVal msg As Long, _
                                    ByVal wp As Long, _
                                    lp As Any) As Long

-3- Dans le code d'un bouton (par exemple) :
Private Sub Command1_Click()

    ' On va chercher le texte qui se trouve en haut à gauche d'un RTB
    Dim Caract As PointApi, PosCar As Long
   
    ' Toutes ces coordonnées qui suivent sont en pixel, pas en twips
    On Error Resume Next
   
    ' Coordonnées du caractère du coin haut gauche (à la louche)
    Caract.x = 2    ' pixel
    Caract.y = 2    ' pixel
   
    ' Recherche le caractère qui correspond
    PosCar = SendMessage(rtfText.hWnd, EM_CHARFROMPOS, ByVal 0, ByVal Caract)
    If PosCar = 0 Then Exit Sub
    Debug.Print "10 caractères trouvés >" & Mid(rtfText.Text, PosCar + 1, 10) & "<"
End Sub

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)

dimanche 29 mai 2005 à 11:15:09 | Re : Comment connaitre la première ligne visible dans une richtextbox

pazgal

J'ai recopié le code que tu m'as fourni mais il fait une erreur sur l'appel à la fonction SendMessage, plus précisement il me surligne : "ByVal Caract" -> "Type incompatible"

N'y a t'il pas plus simple pour n'obtenir que le numéro de la première ligne visible ?
Merci.

dimanche 29 mai 2005 à 19:41:51 | Re : Comment connaitre la première ligne visible dans une richtextbox

jack

Administrateur CodeS-SourceS
Désolé, si tu as bien utilisé la déclaration de SendMessage, il ne doit pas y avoir de problème !

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
lundi 30 mai 2005 à 09:41:48 | Re : Comment connaitre la première ligne visible dans une richtextbox

Renfield

Administrateur CodeS-SourceS
Tu peux tout simplement utiliser le message  EM_GETFIRSTVISIBLELINE

Private Const EM_GETFIRSTVISIBLELINE As Long = &HCE

FirstLineNumber = SendMessage ( RTF1.hWnd , EM_GETFIRSTVISIBLELINE , 0 , Byval 0& )

Amusez-vous !
Renfield - thomas_reynald@msn.com
Admin CodeS-SourceS - MVP Visual Basic
lundi 30 mai 2005 à 09:42:18 | Re : Comment connaitre la première ligne visible dans une richtextbox

Renfield

Administrateur CodeS-SourceS
(valable également pour un TextBox)

Amusez-vous !
Renfield - thomas_reynald@msn.com
Admin CodeS-SourceS - MVP Visual Basic


Cette discussion est classée dans : ligne, richtextbox, visible, première, connaitre


Répondre à ce message

Sujets en rapport avec ce message

Connaitre la premiere ligne vide ??????!!!!!!! [ par Nkubi ] Bonjour,En fait mon problème n'est pas tout à fait de savoir quelle est la première ligne vide. Voilà je fais un fltre sur une feuille et donc je voud Ecrire à la ligne dans une RichTextBox [ par francoislaba ] Bonjour,Voici ma ligne de code qui me permet d'écrire dans une RichTextBox une valeur trouvées dans une autre RichTextBox : RichTextBoxtableau.Text = Supprimer une ligne conditionnellement (Problème !) [ par voix_off ] Bonjour,j'ai un problème énervant !!dans mon tableau Excel, la première colonne est remplie ou bien avec un X, ou bien avec rien du tout (en gros, la Supprimer une ligne conditionnellement [ par voix_off ] Bonjour,j'ai un problème énervant !!dans mon tableau Excel, la première colonne est remplie ou bien avec un X, ou bien avec rien du tout (en gros, la Listview modifié? [ par Stephane33 ] Dans un contrôle Listview, on peut fixer la première ligne, comportant les labels des colonnes. Celles-ci visibles permettent de faire défiler les don RichTextBox [ par Bob06 ] Bonjour à tousEst-ce que quelqu'un pourait me donner les valeurs a utiliser pour la propriété 'SelCharOffset' du contrôle RichTextBox .Cette propriété quel est le séparateur dans richtextbox [ par jytest ] J'ai une richtextbox.Qui peut me dire le séparateur qui se trouve en fin de ligne (contre le bord droit de la richtextbox), quand il une ligne texte e Problème de sélection dans une listbox [ par psev ] Bonjour,J'ai un problème : La première fois que je clqiue sur une ligne pour la sélectionner, par exemple la première ligne, dans ma listbox, c'est la PROG VBA EXCEL [ par limaseb ] Bonjour,Je suis sur un programme ou je me trouve avec des doublons dans excel que je ve garder et les supprimer ds une combobox sous vba. J'ai deja fa Faire scroller une listview [ par hobbi1 ] Hello everybody J'ai une listview qui contient plein de lignes et qui a donc un ascenseur vertical.Quand je mets la sélection (avec propriété Selected


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,328 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales