2

Windows タブレット (キーボードなし) で「元に戻す」、「コピー」、「削除」などの一般的なタスクを実行するのに役立つ永続的なフローティング ツールバーを作成しようとしています。今私はこれを持っています:

Gui, Destroy
Gui,+AlwaysOnTop
Gui,+ToolWindow
Gui,+Border
Gui, Add, Button, y5 w60, &Undo
Gui, Add, Button, y5 w60, &Delete
Gui, Add, Button, y8 h18, X
Gui, Show, y0
Return

ButtonUndo:
ControlSend,, ^z
Return

ButtonDelete:
ControlSend,, {Backspace}
Return

ButtonX:
ButtonCancel:
Gui, Destroy
ExitApp

End:
Reload
Return

ボタンをクリックするとエラー音が鳴る以外は何もしていないようです。最初にどういうわけか別のウィンドウにフォーカスするように指示する必要がありますか?

4

2 に答える 2

0

Settimer で切り替える例を次に示します。

SetTimer, CheckWin, 100; Put at the beginning of your script   

CheckWin:
WinGetTitle, CurrName, A
if (CurrName = PrevName) ; check if window has been changed
    Return ; Only continue if an other application was activated
LastName = %PrevName% ; Use %LastName% in winactivate
PrevName = %CurrName% ; When new app, then sync AppName and PrevName
Return
于 2013-02-25T06:08:10.403 に答える
0

私はそのアイデアが本当に好きです!問題は、ボタンの 1 つをクリックするとすぐに、制御したいアプリケーションからフォーカスが奪われることです...そのため、独自の AutoHotKey アプリケーションにコマンドを送信します...

これを解決する簡単な方法は、最初にAlt+Escを送信してから、たとえば 20 ミリ秒のスリープ後にコマンドを送信することです。

ButtonUndo:
    Send, !{Esc} ; Changed from Alt+Tab
    Sleep, 20
    Send, ^z
Return
于 2013-02-24T19:35:02.373 に答える