0

私はオートホットキーにこの単純なスクリプトを持っています:

:*:teams::
(
milan
juventus
inter
roma
lazio
napoli
mantova
)

メモ帳でチーム
と入力すると、物理キーボードを使用してチームを入力すると、出力はチームのリスト (ミラン、ユベントスなど) になります。このスクリプトは私にとっては機能します 。タスティエラ・フィシカ

、しかし、仮想キーボードを使用してチームを入力すると、メモ帳にリストがありません:

仮想キーボード

スクリプトを実行してチームを自動的に入力すると

WinWait, *new  2 - Notepad++, 
IfWinNotActive, *new  2 - Notepad++, , WinActivate, *new  2 - Notepad++, 
WinWaitActive, *new  2 - Notepad++, 
MouseClick, left,  133,  117
Sleep, 100
Send, squadre

スクリプトはチームをチームのリストに置き換えません

物理キーボードで入力した場合にのみスクリプトが機能するのはなぜですか?
物理キーボードを使用せずに、単語や文章をスクリプトに置き換えるソリューションはありますか?

私が初心者ならごめんなさい

4

1 に答える 1

1

コマンドを使用できますInput

loop {
    While !RegexMatch(strCapture, "teams$") {
        Input, strUserInput, V L1, {BackSpace}  ; V: visible, L1: Character length 1
        If ErrorLevel = Endkey:BackSpace
            strCapture := SubStr(strCapture, 1, StrLen(strUserInput) - 1) 
        else
            strCapture .= strUserInput
        ; tooltip % ErrorLevel "`n" strUserInput "`n" strCapture "`n" ; enable this to see what actually happens
    }
    SendInput,
    (Ltrim
        {Backspace 5}
        milan
        juventus
        inter
        roma
        lazio
        napoli
        mantova
    )
    strCapture := ""
}
于 2012-11-30T11:29:50.733 に答える