移至網頁之主要內容區位置
::: 桃園市桃園區文山國民小學

資訊組維修日誌_公告

ahk語法產生器autohotkey

{{ $t('FEZ002') }} 教務處|

F7::SoundSet -2

F8::SoundSet +2

F6::SoundSet,+1, , mute

#t::
Sleep % 500 
   winset alwaysontop,on,A
   WinSet, Transparent, 150, A 
return

#b::
    winset alwaysontop,off,A
    WinSet, Transparent, off, A 
return
#space::
WinGetActiveTitle, 視窗標題

Msgbox % 視窗標題 . "置頂>切換"
Sleep % 500 
winset,alwaysontop,toggle,a
Return

****************以上自學*******************************以上自學************************

資料來源Poy Chang:https://blog.poychang.net/use-auto-hot-key-in-specific-program/

在指定程式下運作

這裡就是我想要的重頭戲,主要有兩個功能:

  1. 變數
  2. 指定程式

下面範例建立了兩個變數,並用 := 來設定該變數的值,並使用 #IfWinActive 這個標示出下面區塊的設定只會在 Notepad 這支程式下才生效。

#IfWinActive 會去檢查當前的視窗是否是你想要執行的目標視窗,那他是怎麼檢查的呢?他會根據你所設定的 WinTitle 去檢查是否符合你設定的目標,常用 ahk_class(視窗類別,用此檢查視窗名稱)和 ahk_exe(程序名稱或路徑)來指定,參考列表如下:

參數 行為
A 當前視窗
ahk_class 視窗類別
ahk_id 唯一的 ID/HWND
ahk_pid 程序 ID
ahk_exe 程序名稱/路徑
ahk_group 視窗群組

這樣我們就可以寫出像下面這樣的指令碼:

account:="MY_ACCOUNT"
password:="MY_PASSWORD"

#IfWinActive, ahk_class Notepad
^l::
    Send %account%{Tab}%password%{Tab}{Enter}
return

簡單說明一下,上面的指令碼建立了兩個變數,帳號和密碼,然後在特定的程式下(Notepad)可以使用 Ctrl + L 快速輸入 %account%{Tab}%password%{Tab}{Enter} 這個動作,也就是輸入帳號 > 按 Tab 換到下個欄位 > 輸入密碼 > 按 Tab 換到下個按鈕 > 按 Enter 送出

其他

自動啟動

要設定開機自動啟動指定的 .ahk 的指令檔,只需要在下面這個資料夾中,將你的指令檔複製進去,或是在裡面建立指定檔的捷徑,這樣開機時就會自動啟動了。

C:\Users\username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

上述路徑記得將 username 改成你自己的帳戶名稱。



{{ $t('FEZ003') }} Invalid date

{{ $t('FEZ004') }} 2022-06-16|

{{ $t('FEZ005') }} 641|