Функция CreateCaret

Declare Function CreateCaret Lib "user32" Alias "CreateCaret" ( _
        ByVal hwnd As Long,  _
        ByVal hBitmap As Long,  _
        ByVal nWidth As Long,  _
        ByVal nHeight As Long) As Long

CreateCaret создает новую форму каретки с заданными параметрами. Каретка может быть линией, прямоугольником или растром.

hwnd
Описатель окна-владельца курсора
hBitmap
Описатель растра, который будет содержать вид каретки. Если равен 1, то каретка имеет серый цвет вместо черной каретки, если установлен hBitmap, то свойства nWidth и nHeight игнорируются
nWidth
Ширина каретки в логических единицах
nHeight
Высота каретки в логических единицах

Пример

' Создадим новую каретку
' Создайте на форме два TextBox и PictureBox
Sub Text1_GotFocus()
  Dim foc As Long ' окно, получившее фокус
  Dim himage As Long ' описатель картинки
  Dim retval
  foc = GetFocus()
  himage = Picture1.Picture
' Создаем новую каретку
' (handle, bitmap 0=none, width, height)
  Call CreateCaret(foc, himage, 10, 10)
' Показываем новую каретку
  retval = ShowCaret(foc)
End Sub
Private Sub Text2_GotFocus()
  Dim foc As Long ' окно, получившее фокус
  Dim retval
  foc = GetFocus()
' Создаем новую каретку
    Call CreateCaret(foc, 0, 30, 30)
' Показываем новую каретку
  retval = ShowCaret(foc)
End Sub

Категория

Каретка