devxlogo

The number of lines in a multiline TextBox control

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 controllineCount = 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 LongConst EM_GETLINECOUNT = &HBAlineCount = SendMessage(Text1.hWnd, EM_GETLINECOUNT, 0, ByVal 0&)

See also  How College Students Can Shape the Future of Tech Responsibility
devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist