WINDOW-HELP-v2.1

  • タグ:
  • タグはありません
;typedef  struct  tagHELPINFO { 
;    UINT     cbSize; 
;    int      iContextType 
;    int      iCtrlId; 
;    HANDLE   hItemHandle; 
;    DWORD    dwContextId; 
;    POINT    MousePos; 
;} HELPINFO, FAR *LPHELPINFO;

#include "user32.as"
#define WM_HELP 0x0053
#define WS_MINIMIZEBOX 0x00020000
#define WS_MAXIMIZEBOX 0x00010000;最初からついてないからいらない
#define WS_EX_CONTEXTHELP $00000400
GetWindowLong hwnd, -16
SetWindowLong hwnd, -16, stat^(WS_MINIMIZEBOX);statにはGetWindowlongで取得した値が入るんだから使わないと。
GetWindowLong hwnd, -20
SetWindowLong hwnd, -20, stat^(WS_EX_CONTEXTHELP|1)
redraw 1;更新

objsize 100,100
button "ここにヘルプを合わせると…",*NUL
HBTN1= objinfo(stat,2)
oncmd goto*HELP,WM_HELP
pos 200,200
stop

*HELP
LPHELPINFO=lparam
dupptr hItemHandle,LPHELPINFO+4*3,4,vartype("int")
mes hItemHandle
if hItemHandle=HBTN1{dialog "このボタンのヘルプは別にどうってことはない",0,"SYSTEM MESSAGE"}

stop
*NUL