_dButton.au3

;
;===============================================================================
;
; 函數名稱:    _dButton($Gui_id, $btn_ctrlid, $z_img, $j_img, $a_img)
; 描    述:    創建動態按鈕
; 參    數:     $Gui_id     : 窗口句柄
;    $btn_ctrlid  - (必須): 按鈕句柄
;    $z_img    - (可選): 按鈕正常時的圖片
;    $j_img   - (可選): 鼠標經過按鈕時的圖片
;    $a_img   - (可選): 鼠標左鍵點擊時的圖片
;
;===============================================================================
;


Func _dButton($Gui_id, $btn_ctrlid, $z_img, $j_img, $a_img)
 If WinActive($Gui_id) Then
  $mouse = GUIGetCursorInfo($Gui_id)
  If $mouse[4] = $btn_ctrlid Then
   If $mouse[2] = 1 Then
    GUICtrlSetImage($btn_ctrlid, $a_img)
   Else
    GUICtrlSetImage($btn_ctrlid, $j_img)
   EndIf
  Else
   GUICtrlSetImage($btn_ctrlid, $z_img)
  EndIf
 EndIf
EndFunc   ;==>_dButton


;
;===============================================================================
;
; 函數名稱:    _Mousetop($Gui_id,$ctrl_id)
; 描    述:    檢測鼠標是否處於指定控件上方
; 參    數:     $Gui_id     : 窗口句柄
;    $ctrl_id    : 按鈕句柄
; 要    求:   AutoIt3 V3.3.0.0 漢化版 測試OK
;
; 返 回 值:     1 表示鼠標位於指定窗口的控件上。
;             0 表示鼠標沒有在指定窗口的控件上。
;
;
;===============================================================================
;
Func _Mouse_top($Gui_id, $ctrl_id)
  GUICtrlSetState ( $ctrl_id, $GUI_FOCUS )
 If WinActive($Gui_id) Then
  $mouse = GUIGetCursorInfo($Gui_id)
  If @error Then Return 0
  If  $mouse<>0 Then
    If $mouse[4] = $ctrl_id  Then
     Return 1
    Else
     Return 0
    EndIf
  EndIf
 EndIf
EndFunc   ;==>_Mouse_top

發佈了36 篇原創文章 · 獲贊 4 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章