|
|||||||
Открытие формы по координатам курсора
Время создания: 16.03.2019 23:43
Раздел: Разные закладки - VBA - Access - msa.polarcom.ru - 05 Формы
Запись: xintrea/mytetra_db_adgaver_new/master/base/15319721988zhyv0itxz/text.html на raw.githubusercontent.com
|
|||||||
|
|||||||
Открытие формы по координатам курсора... Очевидно такая функция может пригодиться
для написания своих "псевдо-контекстных" меню. Или еще для чего-нибудь.
Итак, покопавшись в API функциях я нашел решение этой проблемы. Private Declare Function MoveWindow Lib "user32.dll" (ByVal hwnd As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal bRepaint As Long) As Long Private Declare Function GetCursorPos Lib "user32.dll" (lpPoint As POINT_TYPE) As Long Private Declare Function GetWindowRect Lib "user32.dll" (ByVal hwnd As Long, lpRect As Rect) As Long Private Type POINT_TYPE x As Long y As Long End Type Private Type Rect left As Long top As Long right As Long bottom As Long End Type Private Sub Form_Open(Cancel As Integer) Dim coord As POINT_TYPE 'координаты курсора Dim retval As Long 'возвращаемое значение Dim r As Rect 'размеры окна retval = GetCursorPos(coord) 'считываем позицию курсора retval = GetWindowRect(Me.hwnd, r) 'считываем размеры текущего окна ' Перемещаем окно формы по позиции курсора retval = MoveWindow(Me.hwnd, coord.x, coord.y, r.right - r.left, r.bottom - r.top, 1) End Sub |
|||||||
Так же в этом разделе:
|
|||||||
|
|||||||
|