Сообщение EM_LINESCROLL

Const EM_LINESCROLL = &HB6

Сообщение EM_LINESCROLL позволяет прокручивать текст в многострочном текстовом поле по вертикали и горизонтали

Возвращаемое значение

Сообщение возвращает True, если текстовое поле является многострочным и False, если текстовое поле - однострочное

Параметры

wParam
Определяет число символов для прокрутки по горизонтали. Положительное число для прокрутки влево, отрицательное для прокрутки вправо. В элементе Rich edit controls данный параметр не используется, установите равным 0
lParam
Определяет число строк для прокрутки по вертикали. положительное число для прокрутки вверх, отрицательное для прокрутки вниз. Кстати, для прокрутки по вертикали не обязательно наличие вертикальной полосы прокрутки в текстовом поле

Пример

' пример прокручивания текста
' создайте две кнопки и текстовое поле Text1 и установите
' свойства Multiline = True и ScrollBars = 3
Private Sub Form_Load()
Dim intLineIndex As Integer, intWordIndex As Integer

' создадим текст
Text1.Text = ""
For intLineIndex = 1 To 15   ' добавим 15 строк
  Text1.Text = Text1.Text & "строка" & Str$(intLineIndex)
   For intWordIndex = 1 To 5  ' строка по 12 слов
    Text1.Text = Text1.Text & " проект" & Str$(intWordIndex)
   Next intWordIndex
  Text1.Text = Text1.Text & vbCrLf
Next intLineIndex

End Sub

Private Sub Command1_Click()
Dim retval As Long
' прокручиваем текст по вертикали
retval = SendMessage(Text1.hWnd, EM_LINESCROLL, 0, 5&)
End Sub

Private Sub Command2_Click()
Dim retval As Long
' прокручиваем текст по горизонтали
retval = SendMessage(Text1.hWnd, EM_LINESCROLL, 5, 0&)
End Sub

Категория

Поля редактирования