如何单击窗口中的特定按钮(不使用XPOS YPOS)

时间:2013-04-15 10:19:39

标签: window autohotkey buttonclick

我刚刚开始使用AUTOHOTKEY并且它非常出色。我有一个疑问。 我想自动启动一个应用程序,然后点击它中的一个特定按钮。我想用AHK完成这个。

启动应用程序后,此窗口显示here。 我想点击“连接”按钮,但我无法找到将光标移动到连接按钮的好方法。我尝试了以下使用tab的代码。

Loop ,5
    {    
sleep 2*1000    
Send {Tab down}    
}

这有效,但我觉得这很粗糙,需要更好的方法。有没有办法使用button_name或button_text?

我也不想使用XPOS和YPOS的屏幕位置。

我的applcn窗口截图链接是this

我从 AutoHotKey 的WINDOW-SPY功能中获得以下信息。希望你能发现它很有用。

  
    
      
        
          
            
              
                
                  
                    

(窗口标题和类别)<<<<<<<<<<<<<                     亚洲登录                     ahk_class QWidget

                                         
                      
                        

(鼠标位置)<<<<<<<<<<<<<<<                         在屏幕上:881,306(不常使用)                         在活动窗口中:462,76

                      
                    
                  
                                     

(现在在鼠标光标下)<<<<<<<<<                   ClassNN:QWidget2                   文字:bnConnect                   颜色:0xC8D0D4(蓝色= C8绿色= D0红色= D4)

                                     
                    

(活动窗口位置)<<<<<<<<<<<                     左:419上:230宽:529高:238

                                         
                      

(状态栏文字)<<<<<<<<<<<<

                                             

(可见窗口文字)<<<<<<<<<<<<<                       layoutWidget                       bnConnect                       bnAbout                       bnClose                       chkRemember                       edPassword                       lbPassword                       edUsername                       teLog                       qt_scrollarea_viewport                       lbUsername

                                             

(隐藏窗口文本)<<<<<<<<<<<<<                       qt_scrollarea_vcontainer                       qt_scrollarea_hcontainer

                    
                  
                
              
            
          
        
                 

(TitleMatchMode =慢速可见文字)<<<<<

                 

(TitleMatchMode =慢速隐藏文字)<<<<<

      
    
  

1 个答案:

答案 0 :(得分:2)

使用ControlClick:

ControlClick, ClassNN QWidget2, ahk_class QWidget, , Left, 1

也许使用WinTitle,尝试使用记事本中的另存为窗口。

SetTitleMatchMode,2
ControlClick, Button1, Save As, , Left, 1

那将是亚洲网登录:

SetTitleMatchMode,2
ControlClick, QWidget2, Asianet Login, , Left, 1

假设您在制作AHK Windows Spy快照时悬停在“登录”按钮上。