📄 cursorset.asm
字号:
;****************set cursor functions*******************
_CursorProc proc hWnd:DWORD,uMsg:DWORD,wParam:DWORD,lParam:DWORD
mov eax,uMsg
.if eax == WM_SETCURSOR
invoke SetCursor,hHandCur
.else
invoke GetWindowLong,hWnd,GWL_USERDATA
invoke CallWindowProc,eax,hWnd,uMsg,wParam,lParam
ret
.endif
xor eax,eax
ret
_CursorProc endp
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
_SetMainDlgCur proc hWnd:HWND
local hWinTemp:dword
invoke GetDlgItem,hWnd,IDC_BROWSE
mov hWinTemp,eax
invoke SetWindowLong,hWinTemp,GWL_WNDPROC,addr _CursorProc
invoke SetWindowLong,hWinTemp,GWL_USERDATA,eax
invoke GetDlgItem,hWnd,IDC_PLAY
mov hWinTemp,eax
invoke SetWindowLong,hWinTemp,GWL_WNDPROC,addr _CursorProc
invoke SetWindowLong,hWinTemp,GWL_USERDATA,eax
invoke GetDlgItem,hWnd,IDC_EXIT
mov hWinTemp,eax
invoke SetWindowLong,hWinTemp,GWL_WNDPROC,addr _CursorProc
invoke SetWindowLong,hWinTemp,GWL_USERDATA,eax
invoke GetDlgItem,hWnd,IDC_ITEM
mov hWinTemp,eax
invoke SetWindowLong,hWinTemp,GWL_WNDPROC,addr _CursorProc
invoke SetWindowLong,hWinTemp,GWL_USERDATA,eax
invoke GetDlgItem,hWnd,IDC_SETCOLOR
mov hWinTemp,eax
invoke SetWindowLong,hWinTemp,GWL_WNDPROC,addr _CursorProc
invoke SetWindowLong,hWinTemp,GWL_USERDATA,eax
invoke GetDlgItem,hWnd,IDC_REPEAT
mov hWinTemp,eax
invoke SetWindowLong,hWinTemp,GWL_WNDPROC,addr _CursorProc
invoke SetWindowLong,hWinTemp,GWL_USERDATA,eax
invoke GetDlgItem,hWnd,IDC_ABOUT
mov hWinTemp,eax
invoke SetWindowLong,hWinTemp,GWL_WNDPROC,addr _CursorProc
invoke SetWindowLong,hWinTemp,GWL_USERDATA,eax
invoke GetDlgItem,hWnd,IDC_CHANGEVOLUME
mov hWinTemp,eax
invoke SetWindowLong,hWinTemp,GWL_WNDPROC,addr _CursorProc
invoke SetWindowLong,hWinTemp,GWL_USERDATA,eax
ret
_SetMainDlgCur endp
_SetDlgSetCur proc hWnd:HWND
local hWinTemp:dword
invoke GetDlgItem,hWnd,IDC_SETLIST
mov hWinTemp,eax
invoke SetWindowLong,hWinTemp,GWL_WNDPROC,addr _CursorProc
invoke SetWindowLong,hWinTemp,GWL_USERDATA,eax
invoke GetDlgItem,hWnd,IDC_CLOSE
mov hWinTemp,eax
invoke SetWindowLong,hWinTemp,GWL_WNDPROC,addr _CursorProc
invoke SetWindowLong,hWinTemp,GWL_USERDATA,eax
invoke GetDlgItem,hWnd,IDC_UP
mov hWinTemp,eax
invoke SetWindowLong,hWinTemp,GWL_WNDPROC,addr _CursorProc
invoke SetWindowLong,hWinTemp,GWL_USERDATA,eax
invoke GetDlgItem,hWnd,IDC_DOWN
mov hWinTemp,eax
invoke SetWindowLong,hWinTemp,GWL_WNDPROC,addr _CursorProc
invoke SetWindowLong,hWinTemp,GWL_USERDATA,eax
invoke GetDlgItem,hWnd,IDC_DELETE
mov hWinTemp,eax
invoke SetWindowLong,hWinTemp,GWL_WNDPROC,addr _CursorProc
invoke SetWindowLong,hWinTemp,GWL_USERDATA,eax
invoke SetWindowLong,hListBox,GWL_WNDPROC,addr _CursorProc
invoke SetWindowLong,hListBox,GWL_USERDATA,eax
ret
_SetDlgSetCur endp
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -