Function Reference

GUISetOnEvent

システムボタンがクリックされた際に呼ばれるユーザー定義関数を定義します。

GUISetOnEvent ( specialID, "function" [, winhandle] )

 

パラメータ

specialID 下記の特別ID表を参照。
function 呼ばれるユーザー関数の名前
winhandle [オプション] GUICreateによって返されるウィンドウハンドル(デフォルトでは直前に使われたウィンドウ)。

 

返し値

成功 1を返します。
失敗 0を返します。

 

注意

OnEvent関数はGUIOnEventModeオプションが1に設定されている場合のみ呼ばれます。このモードの際はGUIGetMsgは使用されません。

GUIEventOptionsオプションが1に設定されている場合、最小化、復元、最大化ボタンはウィンドウに対して動作せず通知だけがおこなわれます。

functionが空文字列""の場合、それ以前のユーザー定義は無効になります。

    特別ID表
特別ID コメント
$GUI_EVENT_CLOSE (定義したボタン、またはシステムメニューによって)ダイアログボックスが閉じられました。
$GUI_EVENT_MINIMIZE ウィンドウタイトルバーのボタンによってダイアログボックスが最小化されました。
$GUI_EVENT_RESTORE タスクバーアイコンのクリックによってダイアログボックスが元に戻されました。
$GUI_EVENT_MAXIMIZE ウィンドウタイトルバーのボタンによってダイアログボックスが最大化されました。
$GUI_EVENT_MOUSEMOVE マウスカーソルが動きました。
$GUI_EVENT_PRIMARYDOWN マウス第1ボタンが押されました。
$GUI_EVENT_PRIMARYUP マウス第1ボタンが離されました。
$GUI_EVENT_SECONDARYDOWN マウス第2ボタンが押されました。
$GUI_EVENT_SECONDARYUP マウス第2ボタンが離されました。
$GUI_EVENT_RESIZED ダイアログボックスのサイズが変更されました。
$GUI_EVENT_DROPPED ドラッグアンドドロップアクションがおこなわれました。@GUI_DRAGID、@GUI_DRAGFILE、@GUI_DROPIDを使用して関係するコントロールに対応するID/ファイルを取得できます。

 

関連

GUIOnEventMode (Option), GUIEventOptions (Option), GUICtrlSetOnEvent

 


#include <GUIConstantsEx.au3>

Opt('MustDeclareVars', 1)

Example()

Func Example()
    Local $parent1, $ok1, $cancel1
   
    Opt("GUICoordMode", 2)
    Opt("GUIResizeMode", 1)
    Opt("GUIOnEventMode", 1)

    $parent1 = GUICreate("Parent1")
    GUISetOnEvent($GUI_EVENT_CLOSE, "SpecialEvents")
    GUISetOnEvent($GUI_EVENT_MINIMIZE, "SpecialEvents")
    GUISetOnEvent($GUI_EVENT_RESTORE, "SpecialEvents")


    $ok1 = GUICtrlCreateButton("OK", 10, 30, 50)
    GUICtrlSetOnEvent(-1, "OKPressed")

    $cancel1 = GUICtrlCreateButton("Cancel", 0, -1)
    GUICtrlSetOnEvent(-1, "CancelPressed")

    GUISetState(@SW_SHOW)


    ; アイドリングするだけ
    While 1
        Sleep(10)
    WEnd
EndFunc   ;==>Example

Func OKPressed()
    MsgBox(0, "OK Pressed", "ID=" & @GUI_CtrlId & " WinHandle=" & @GUI_WinHandle & " CtrlHandle=" & @GUI_CtrlHandle)
EndFunc   ;==>OKPressed


Func CancelPressed()
    MsgBox(0, "Cancel Pressed", "ID=" & @GUI_CtrlId & " WinHandle=" & @GUI_WinHandle & " CtrlHandle=" & @GUI_CtrlHandle)
EndFunc   ;==>CancelPressed


Func SpecialEvents()


    Select
        Case @GUI_CtrlId = $GUI_EVENT_CLOSE
            MsgBox(0, "Close Pressed", "ID=" & @GUI_CtrlId & " WinHandle=" & @GUI_WinHandle)
            Exit

        Case @GUI_CtrlId = $GUI_EVENT_MINIMIZE
            MsgBox(0, "Window Minimized", "ID=" & @GUI_CtrlId & " WinHandle=" & @GUI_WinHandle)

        Case @GUI_CtrlId = $GUI_EVENT_RESTORE
            MsgBox(0, "Window Restored", "ID=" & @GUI_CtrlId & " WinHandle=" & @GUI_WinHandle)

    EndSelect

EndFunc   ;==>SpecialEvents