Declare Function GetFocus Lib "user32.dll" () As Long
GetFocus получает описатель окна, имеющего фокус ввода в вызывающем потоке. Функция не работает, если фокус ввода имеет другая программа.
В успешном случае функция возвращает описатель окна, имеющего фокус ввода. Если фокус ввода имеет другая программа, то возвращается 0.
Функция не имеет параметров
' Создайте на форме два 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