此頁將介紹自動(dòng)打開記事本程序、輸入指定文字、最后關(guān)閉記事本的方法。我們假定您已經(jīng)掌握了在 HelloWorld 指南中介紹的創(chuàng)建并運(yùn)行AutoIt腳本的方法。
首先創(chuàng)建一個(gè)新的腳本文件,命名為 npad.au3 然后打開它進(jìn)行編輯(按您自己的習(xí)慣使用記事本程序或 SciTe 都可以)。
我們首先需要了解的是記事本程序的可執(zhí)行文件名,也就是 notepad.exe——您可以在開始菜單中尋找記事本的快捷方式圖標(biāo),從其屬性中可獲得這一信息(指文件名)。要運(yùn)行記事本程序,我們使用AutoIt 的 Run 函數(shù)。此函數(shù)用以運(yùn)行可執(zhí)行文件并繼續(xù)下一步操作。
在腳本的第一行輸入以下代碼:
Run("notepad.exe")
運(yùn)行此腳本——如果一切正常的話則記事本將被打開。
當(dāng)對應(yīng)用程序進(jìn)行自動(dòng)化操作時(shí)AutoIt可檢測窗口標(biāo)題,這樣它就能針對該窗口進(jìn)行操作。很明顯,記事本的窗口標(biāo)題就是 無標(biāo)題 - 記事本(若OS是英文版則為 無標(biāo)題 - 記事本)。當(dāng)應(yīng)用窗口標(biāo)題時(shí)AutoIt 是區(qū)分大小寫的,因此您必須確保標(biāo)題完全一致——最好的方法是使用AutoIt 窗口信息工具來獲取窗口標(biāo)題。此窗口信息工具可在這里找到:開始菜單 \ 所有程序 \ AutoIt v3 \ AutoIt Window Info.
打開窗口信息工具之后再點(diǎn)擊記事本的窗口來激活記事本(使其變?yōu)榛顒?dòng)窗口),此時(shí)窗口信息工具將顯示記事本窗口的有關(guān)信息。我們現(xiàn)在需要獲得的是窗口的標(biāo)題。
在AutoIt Info Tool的窗口中選中窗口標(biāo)題名然后按下CTRL-C以復(fù)制名稱到剪貼板——這樣我們就可以在腳本中直接粘貼標(biāo)題而不怕打錯(cuò)字了。
在 運(yùn)行 了記事本的一個(gè)副本之后我們需要等待它的窗口出現(xiàn)并且變成激活窗口才能發(fā)送鍵擊動(dòng)作。使用 WinWaitActive 函數(shù)即可實(shí)現(xiàn)這一目的。在AutoIt中大多數(shù)有關(guān)窗口操作的函數(shù)都帶有窗口標(biāo)題參數(shù)。
在腳本的第二行輸入以下代碼(按下CTRL-V 或者 編輯 \粘貼 命令來粘貼剛才復(fù)制到剪貼板的窗口標(biāo)題)
WinWaitActive("無標(biāo)題 - 記事本")
在我們可以確定記事本窗口可見之后,下一步就是要鍵入一些文字了。使用 Send 函數(shù)即可實(shí)現(xiàn)這一目的。
在腳本中添加以下這行代碼。
Send("This is some text.")
整個(gè)腳本應(yīng)該是這樣:
Run("notepad.exe")
WinWaitActive("無標(biāo)題 - 記事本")
Send("This is some text.")
關(guān)閉我們之前打開的記事本程序(每次您運(yùn)行此腳本都要這么做否則你會(huì)發(fā)現(xiàn)有許多記事本窗口打開。。然后運(yùn)行腳本。
您應(yīng)該會(huì)看到記事本打開了,接著一些文字將如變戲法般出現(xiàn)在記事本的編輯區(qū)域!
下一步我們需要關(guān)掉記事本,使用 WinClose 函數(shù)即可實(shí)現(xiàn)這一目的。
WinClose("無標(biāo)題 - 記事本")
當(dāng)記事本要關(guān)閉時(shí)會(huì)有一個(gè)對話框提示您是否保存文件。使用窗口信息工具獲取此對話框的詳細(xì)信息以便做出回應(yīng):)
因此我們需要再添加一行代碼等待該對話框變成激活狀態(tài)(為了和原有的記事本窗口區(qū)別開來,我們需要使用窗口文字參數(shù)來令函數(shù)更加準(zhǔn)確):
WinWaitActive("記事本", "文件 無標(biāo)題 的文字已經(jīng)改變")
下一步是自動(dòng)按下ALT-N 來選擇 否(N) 這個(gè)按鈕(窗口中帶有下劃線的字母通常用以說明可以同時(shí)按下ALT鍵及該字母鍵作為快捷鍵進(jìn)行操作)。在 Send 函數(shù)中要發(fā)送ALT鍵可使用 ! 來表示
Send("!n")
最后完整的腳本如下:
Run("notepad.exe")
WinWaitActive("無標(biāo)題 - 記事本")
Send("This is some text.")
WinClose("無標(biāo)題 - 記事本")
WinWaitActive("記事本", "文件 無標(biāo)題 的文字已經(jīng)改變")
Send("!n")
運(yùn)行此腳本您就會(huì)看到記事本打開,接著文字出現(xiàn),最后被關(guān)閉!現(xiàn)在您應(yīng)該能夠應(yīng)用在此指南中學(xué)到的技術(shù)進(jìn)行其它應(yīng)用程序的自動(dòng)化操作了。