;---Auto-executeセクション ここから---
#NoTrayIcon ;スクリプトのタスクトレイアイコンを非表示にする。 デフォルトのアイコンが一瞬表示されるのを防止
;---初期設定---
IconPath = %SystemRoot%\system32\SHELL32.dll
Index = 138
IconPath2 = %SystemRoot%\system32\SHELL32.dll
Index2 = 110
;---タスクトレイ---
Menu,Tray,NoStandard ;初期アイコンメニュー非表示
Menu,Tray,icon,%IconPath%,%Index%,1 ;タスクトレイアイコンを変更する。
Menu,Tray,icon ;#NoTrayIcon指令でアイコンが非表示になっているとき、デフォルトのアイコンを表示する。
Menu,Tray,Tip,TestWindow ;マウスを乗せたときに表示されるツールチップ
Menu,Tray,Add,表示/非表示,GUI_OnOff ;項目追加、指定した名前のラベルを割り当てる。
Menu,Tray,Add ;メニューに区切り線を追加する。
Menu,Tray,Add,有効,SuspendOnOff ;項目追加、指定した名前のラベルを割り当てる。
Menu,Tray,Add,無効,SuspendOnOff
Menu,Tray,Add
Menu,Tray,Add,終了,GuiClose ;項目追加、指定した名前のラベルを割り当てる。
Menu,Tray,Default,表示/非表示 ;メニューのデフォルト項目を設定する。タスクトレイアイコンをダブルクリックしたときにデフォルト項目が実行される。
Menu,Tray,Check,有効 ;項目をチェックが付いた状態にする。
;---GUIウインドウ---
Gui,Add,GroupBox,y+10 w428 h76,アイコンの設定 ;GUIウィンドウに複数のコントロールを囲む枠を追加する
Gui,Add,Text,xp+10 yp+21,[有効] ;GUIウィンドウにスタティックテキストを追加する
Gui,Add,GroupBox,x+7 yp-11 w24 h29
Gui,Add,Picture,xp+4 yp+9 w16 h16 vPicture1 Icon%Index%,%IconPath% ;GUIウィンドウに画像を表示するコントロールを追加する
Gui,Add,Edit,x+10 yp-1 w300 r1 ReadOnly vPath1,%IconPath% ;GUIウィンドウにテキスト入力欄を追加する
Gui,Add,Button,x+2 yp-2 gButton1,参照 ;GUIウィンドウにボタンコントロールを追加する
Gui,Add,Text,xp-371 y+8,[無効]
Gui,Add,GroupBox,x+7 yp-11 w24 h29
Gui,Add,Picture,xp+4 yp+9 w16 h16 vPicture2 Icon%Index2%,%IconPath2%
Gui,Add,Edit,x+10 yp-1 w300 r1 ReadOnly vPath2,%IconPath2%
Gui,Add,Button,x+2 yp-2 gButton2,参照
Gui,Show,,TestWindow ;GUIウィンドウの表示
Return
;---Auto-executeセクション ここまで---
~Esc:: ;サスペンドキー
SuspendOnOff:
Suspend
If (A_IsSuspended) ;スクリプトがSuspendコマンドでサスペンドされている場合は「1」= 真(True)になる
{
Menu,Tray,icon,%IconPath2%,%Index2%,1 ;タスクトレイアイコンを変更する。
Menu,Tray,Uncheck,有効 ;項目をチェックの付いていない状態にする。
Menu,Tray,Check,無効 ;項目をチェックの付いていない状態にする。
Return
}
Menu,Tray,icon,%IconPath%,%Index%,1
Menu,Tray,Check,有効
Menu,Tray,Uncheck,無効
Return
GUI_OnOff:
IfWinExist,TestWindow ;条件に一致するウィンドウが存在するかどうかで分岐
Gui,Cancel ;GUIウィンドウを非表示にする
Else
Gui,Show ;GUIウィンドウの表示
Return
Button1:
WinGet,hWnd,ID,TestWindow
Index := 0
VarSetCapacity(IconPath, 260)
Dlg := DllCall("Shell32.dll\PickIconDlg", "Uint", hWnd, "str", IconPath, "Uint", 260, "IntP", Index)
If !Dlg
Return
Index += 1
GuiControl,,Picture1,*Icon%Index% %IconPath%
GuiControl,,Path1,%IconPath%
Return
Button2:
WinGet,hWnd,ID,TestWindow
Index2 := 0
VarSetCapacity(IconPath2, 260)
Dlg := DllCall("Shell32.dll\PickIconDlg", "Uint", hWnd, "str", IconPath2, "Uint", 260, "IntP", Index2)
If !Dlg
Return
Index2 += 1
GuiControl,,Picture2,*Icon%Index2% %IconPath2%
GuiControl,,Path2,%IconPath2%
Return
GuiClose: ;ウィンドウを閉じようとしたときに実行される。
ExitApp
|