【HSP3】F10/Altキー、メニュー表示時、タイトルのクリック・ドラッグ時の検出

例によって適当

例によって適当

  • hk1v
  • 2014/5/27 23:26
  • タグ:
  • タグはありません
#define WM_NCLBUTTONDOWN 0x00A1
#define WM_NCLBUTTONUP 0x00A2
#define WM_MOVING 0x0216
#define WM_EXITSIZEMOVE 0x0232
#define WM_SYSKEYDOWN 0x104
#define WM_SYSKEYUP 0x105
#define WM_NCACTIVATE 0x0086
#define WM_INITMENU 0x0116
#define WM_EXITMENULOOP 0x0212
#define WM_NCMOUSELEAVE 0x02A2
#define WM_NCMOUSEMOVE 0x00A0
#define WM_NCRBUTTONDOWN 0x00A4
#define WM_INITMENUPOPUP 0x0117
#define MF_SYSMENU 0x00002000
#define ctype HIWORD(%1) (%1 >> 16 & $FFFF)
oncmd gosub *onNCLBUTTONDOWN, WM_NCLBUTTONDOWN
oncmd gosub *onNCRBUTTONDOWN, WM_NCRBUTTONDOWN
oncmd gosub *onMOVING, WM_MOVING
oncmd gosub *onNCMOUSELEAVE, WM_NCMOUSELEAVE
oncmd gosub *onNCMOUSEMOVE, WM_NCMOUSEMOVE
oncmd gosub *onINITMENU, WM_INITMENU
oncmd gosub *onINITMENUPOPUP, WM_INITMENUPOPUP
oncmd gosub *onEXITMENULOOP, WM_EXITMENULOOP
s = "", "()", "()"
repeat
pos 0, 0 : color 255, 255, 255 : boxf : color
mes cnt
gosub *update
wait 12
loop
stop
*update
title s(pause)
return
//
*onINITMENU
pause = 2
gosub *update
return
//
*onINITMENUPOPUP
//
if HIWORD(wparam) && MF_SYSMENU{
pause = 2
gosub *update
}
return
//
*onEXITMENULOOP
pause = 0
gosub *update
return
// ()
*onNCLBUTTONDOWN
if pause != 2{
pause = 1
gosub *update
}
return
// ()
*onNCRBUTTONDOWN
if pause != 2{
pause = 1
gosub *update
}
return
// (WM_MOVE)
*onMOVING
if pause != 2{
pause = 1
gosub *update
}
return
// ()
*onNCMOUSELEAVE
if pause != 2{
pause = 0
gosub *update
}
return
// ()
*onNCMOUSEMOVE
if pause != 2{
pause = 0
gosub *update
}
return
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX