использование:
Public Declare Function CreateWindowExA Lib "user32" (ByVal dwExStyle As Long,
ByVal lpClassName As String, ByVal lpWindowName As String, ByVal dwStyle As Long,
ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long,
ByVal hWndParent As Long, ByVal hMenu As Long, ByVal hInstance As Long, lpParam As Any)
As Long
или
Public Declare Function CreateWindowExW Lib "user32" (ByVal dwExStyle As Long,
ByVal lpClassName As Long, ByVal lpWindowName As Long, ByVal dwStyle As Long,
ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long,
ByVal hWndParent As Long, ByVal hMenu As Long, ByVal hInstance As Long, lpParam As Long)
As Long
примечание: вы можете изменить lpClassName
или lpWindowName
на string
или long
в объявлении
убедитесь, что вы используете "Static" в качестве члена lpClassName
- это тот невидимый стиль окна, который вы хотите использовать, который обычно используется для получения окон wndproc.
возвращаемое значение из этого API-интерфейса - это hwnd (дескриптор), который можно подклассить для получения сообщений.
он будет получать все стандартные сообщения Windows или вы можете отправлять ему собственные сообщения, поэтому он не запустит ваш код случайно при получении стандартного сообщения.
Пример:
hwnd_main
- это адрес его родительского окна
dim hwnd_recieve as long
hwnd_recieve = CreateWindowEx(num_zero, "Static", "",0,0,0,0,0, hwnd_main,0,0,0)
подкласс это и получайте удовольствие!