我必须点击附带的下载窗口中的保存。 我想使用VBA但不使用sendkeys或mouseevent。 我希望有一些熟悉的东西:VBA Internet Explorer Automation - How to Select "Open" When Downloading a File
请参阅随附的窗口,其中包含按钮和这些窗口中的属性(使用AutoIT)和下面的简历:
下载窗口:Download Window AutoIT窗口属性:AutoIT Window Properties 1
窗口
标题:Windows Internet Explorer
分类:#32770
职位:1672,227
尺寸:391,287
风格:0x96C80284
ExStyle:0x00010101
句柄:0x005002D6
控制
类别:按钮
实例:1
ClassnameNN:Button1
姓名:
高级(班级):[CLASS:Button; INSTANCE:1]
ID:
文字:&打开
位置:10,114
尺寸:365,40
ControlClick Coords:302,30
风格:0x5000200F
ExStyle:0x00000000
句柄:0x0048073C
可见文字
&安培;打开
&安培;保存
保存并作为
取消
答案 0 :(得分:0)
与以下代码完美配合:
Sub Download()
Dim o As IUIAutomation
Dim e As IUIAutomationElement
Set o = New CUIAutomation
h = ie.hwnd
h = FindWindow("#32770", vbNullString)
If h = 0 Then Exit Sub
Set e = o.ElementFromHandle(ByVal h)
Dim iCnd As IUIAutomationCondition
Set iCnd = o.CreatePropertyCondition(UIA_NamePropertyId, "Save")
Dim Button As IUIAutomationElement
Set Button = e.FindFirst(TreeScope_Subtree, iCnd)
Dim InvokePattern As IUIAutomationInvokePattern
Set InvokePattern = Button.GetCurrentPattern(UIA_InvokePatternId)
InvokePattern.Invoke
End Sub