Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: VB4/32,VB5,VB6
Expertise: Intermediate
Jan 29, 2000

The number of lines in a multiline TextBox control

You can quickly determine how many lines of text are contained in a multiline TextBox control whose Scrollbars property is set to 3-Both - that is, when the TextBox behaves like a programmer's editor - by counting the number of CR-LF characters in the Text property. You can do that in just one line of code as follows:

' Text1 is a multiline TextBox control
lineCount = Len(Text1.Text) - Len(Replace(Text1.Text, vbCrLf, vbCr))
However, this approach fails when Scrollbars = 2-Vertical, that is when the TextBox behave like a word processor and wraps longer lines.

A better approach - that works with any type of multiline TextBox control - is to send it the EM_GETLINECOUNT message:


Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal _
    hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, _
    lParam As Any) As Long
Const EM_GETLINECOUNT = &HBA

lineCount = SendMessage(Text1.hWnd, EM_GETLINECOUNT, 0, ByVal 0&)
Francesco Balena
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
Thanks for your registration, follow us on our social networks to keep up-to-date