Googler
Сообщения: 3665
Благодарности: 1563
|
Профиль
|
Отправить PM
| Цитировать
Maza Faka
Цитата:
Пытаюсь реализовать вот такой хинт »
|
интересно, а чем не устраивает штатный ToolTip?
Цитата:
Если найдётся время посмотри пожалуйста где ошибка »
|
что касается структур подправил, но сразу после отображения окна скрипт все равно валится... возможно, причина в том что это OCX а не DLL, либо требуется что-то еще.. можешь, кстати, поинтересоваться на оффсайте:
Код: 
#include <GuiConstants.au3>
#include <WinAPI.au3>
Global Const $HH_DISPLAY_TEXT_POPUP = 0xE
Global Const $HH_CLOSE_ALL = 0x12
Global $DllRet
$hGUI = GUICreate("Test GUI", 300, 200, -1, -1, BitOR($WS_CAPTION, $WS_POPUP, $WS_SYSMENU), $WS_EX_CONTEXTHELP)
$hInput1 = GUICtrlCreateInput("", 50, 50, 200, 20)
$hInput2 = GUICtrlCreateInput("Input text here", 50, 100, 200, 20)
$HelpButton = GUICtrlCreateButton("Help", 20, 160, 60, 25)
$HH_POPUP = DllStructCreate("int cbStruct;hwnd hinst;uint idString;ptr pszText;long pt[2];dword clrForeground;dword clrBackground;long rcMargins[4];ptr pszFont")
$tPoint = DllStructCreate("long X;long Y", DllStructGetPtr($HH_POPUP, "pt"))
$tRect = DllStructCreate("long L;long T;long R;long B", DllStructGetPtr($HH_POPUP, "rcMargins"))
$tText = DllStructCreate("char String[256]")
$tFont = DllStructCreate("char String[256]")
DllStructSetData($tText, "String", "Help Popup")
DllStructSetData($tFont, "String", "MS Sans Serif, 10, , BOLD")
DllStructSetData($tRect, "L", -1)
DllStructSetData($tRect, "R", -1)
DllStructSetData($tRect, "T", -1)
DllStructSetData($tRect, "B", -1)
DllStructSetData($HH_POPUP, "cbStruct", DllStructGetSize($HH_POPUP))
DllStructSetData($HH_POPUP, "hinst", _WinAPI_GetModuleHandle(""))
DllStructSetData($HH_POPUP, "idString", 0)
DllStructSetData($HH_POPUP, "pszText", DllStructGetPtr($tText))
DllStructSetData($HH_POPUP, "clrForeground", -1)
DllStructSetData($HH_POPUP, "clrBackground", -1)
DllStructSetData($HH_POPUP, "pszFont", DllStructGetPtr($tFont))
GUISetState()
While 1
Switch GUIGetMsg()
Case -3
ExitLoop
Case $HelpButton
$aPos = MouseGetPos()
DllStructSetData($tPoint, "X", $aPos[0])
DllStructSetData($tPoint, "Y", $aPos[1])
$DllRet = DllCall("HHCtrl.ocx", "hwnd", "HtmlHelpA", "hwnd", $hGUI, "ptr", 0, _
"uint", $HH_DISPLAY_TEXT_POPUP, "dword", DllStructGetPtr($HH_POPUP))
Sleep(3000)
DllCall("HHctrl.ocx", "hwnd", "HtmlHelpA", "hwnd", $DllRet[0], "ptr", 0, "uint", $HH_CLOSE_ALL, "dword", 0)
EndSwitch
WEnd
|