DetectHiddenText, On !F:: win_JF: win_xx = 1 win_pp = qwerasdzxc WinGet,win_id,ID,A WinGet,win_kj,ControlList,A if win_kj not contains Button ;避免不必要的操作 { MsgBox,不包含按钮信息 return } Loop, Parse, win_kj , `n, ;检测到按钮控件则创建ToolTip { if A_LoopField contains Button,Edit, { ControlGetPos , win_xc, win_yc, , , %A_LoopField%, A, win_xx := win_xx+1 StringMid, win_uu, win_pp, win_xx,1 ToolTip , %win_uu%, win_xc, win_yc,%win_xx% win_FF = %win_FF%`n%win_uu%%A_LoopField% if win_xx = 20 { Break } } } Input, SingleKey, L1 ,{Esc},{LControl}{RControl}{LAlt}{RAlt}{LShift}{RShift}{LWin}{RWin}{AppsKey}{F1}{F2}{F3}{F4}{F5}{F6}{F7}{F8}{F9}{F10}{F11}{F12}{Left}{Right}{Up}{Down}{Home}{End}{PgUp}{PgDn}{Del}{Ins}{BS}{Capslock}{Numlock}{PrintScreen}{Pause} if ErrorLevel = EndKey:Escape { ToolTip Reload } if ErrorLevel = Max { Loop, Parse, win_FF , `n, { StringMid, OutputVar, A_LoopField, 1 , 1 , if (OutputVar = SingleKey) { StringMid, win_kk, A_LoopField, 2 , ControlClick ,%win_kk%,ahk_id %win_id% gosub,win_JF } } } ToolTip Reload return