返回值
無。
例子
下面的例子會激活記事本(notepad)程序并使用大寫和小寫的方式輸入字符串。注意在發送第一個字符串時,SHIFT鍵保持被按下的狀態:
Const VK_SHIFT = 42
Const VK_RETURN = 28
Set deviceReplay = CreateObject( "Mercury.DeviceReplay" )
SystemUtil.Run "notepad.exe", "", "", "open"
Window( "nativeclass:=Notepad", "index:=0" ).Activate micLeftBtn
' ** Typing uppercase
deviceReplay.KeyDown VK_SHIFT
deviceReplay.SendString( "devicereplay" )
deviceReplay.PressKey VK_RETURN
deviceReplay.KeyUp VK_SHIFT
' ** Typing in lower case
deviceReplay.SendString( "devicereplay" )
Set deviceReplay = Nothing
提示
在KeyDown后應該有相應的KeyUp方法的調用。
KeyDown方法就像人工按下一個按鍵并保持按下的狀態。
KeyUp方法
描述
模擬通過鍵盤釋放某個按下的按鍵。
語法
object.KeyUp( key )
參數
object : Mercury.DeviceReplay對象。
key : 按鍵的數值碼??刹殚喓竺娴?ldquo;Key Codes 參考”。
返回值
無。
例子
下面的例子會激活并并使用熱鍵CTRL+O來打開記事本(notepad)的菜單,然后用ESC鍵關閉對話框。
Const VK_O = 24
Const VK_CONTROL = 29
Const VK_ESCAPE = 1
Set deviceReplay = CreateObject( "Mercury.DeviceReplay" )
SystemUtil.Run "notepad.exe", "", "", "open"
Window( "nativeclass:=Notepad", "index:=0" ).Activate micLeftBtn
' ** Typing uppercase
Wait 1
' ** Opening the menu Ctrl + O
deviceReplay.KeyDown VK_CONTROL
deviceReplay.PressKey VK_O
deviceReplay.KeyUp VK_CONTROL
Wait 2
' ** Closing the menu
deviceReplay.PressKey VK_ESCAPE
deviceReplay.SendString "Menu Open, was closed."
Set deviceReplay = Nothing
提示
KeyUp方法應該與KeyDown方法配對使用。
多個KeyUp不會對應用程序造成影響。
如果需要組合熱鍵,僅需要像人工執行的方式一樣即可。
PressKey方法
描述
模擬通過鍵盤按下一個按鍵并立即釋放。
語法
object.PressKey( key )
參數
object : Mercury.DeviceReplay對象。
key : 按鍵的數值碼??刹殚喓竺娴?ldquo;Key Codes 參考”。
返回值
無。
例子
下面的例子會激活記事本并使用熱鍵CTRL+O來模擬選擇文件打開菜單,然后用ESCAPE按鍵關閉對話框。
Const VK_O = 24 : Const VK_F = 33
Const VK_CONTROL = 29 : Const VK_ESCAPE = 1 : Const VK_MENU = 56
Set deviceReplay = CreateObject( "Mercury.DeviceReplay" )
SystemUtil.Run "notepad.exe", "", "", "open"
Window( "nativeclass:=Notepad", "index:=0" ).Activate micLeftBtn
Wait 1
' ** Opening the menu Alt + F + O
deviceReplay.PressKey VK_MENU
deviceReplay.PressKey VK_F
deviceReplay.PressKey VK_O
Wait 2
' ** Closing the menu
deviceReplay.PressKey VK_ESCAPE
deviceReplay.SendString "Open menu was closed."
Set deviceReplay = Nothing
PressNKeys方法
描述
模擬通過鍵盤 多次按下一個按鍵并立即釋放。
語法
object.PressNKey( key, N )
參數
object : Mercury.DeviceReplay對象。
原文轉自:http://www.anti-gravitydesign.com