代码如下,在选项卡显示弹出网页没问题,但是自动切换到选项卡二失败。请大神帮忙分析一下,谢谢!
Code: Select all
gui,new
global HTab ; <-- 全局变量,在函数中可访问
Global TabGroup
Gui, Add, Button, x1110 y5 w40 Default, 后退
Gui, Add, Button, x1160 y5 w40 Default, 前进
Gui, Add, Button, x1210 y80 w40 h30 Default, 下载
Gui ,+Resize
Gui, Add, Tab2,x00 y10 w1200 h690 vTabGroup HwndHTab, General|New ;添加组框架,包含两页
Gui,Tab,General ;对第一页进行设置
Gui, Add, ActiveX, w1180 h660 vWB, Shell.Explorer ;把浏览器添加到第一页
Gui,Tab,New
Gui, Add, ActiveX, w1180 h660 vWB2, Shell.Explorer
Gui, Tab ; 随后的控件不属于任何选项卡控件的一部分.
Gui,Show,w1260 h700
ComObjConnect(WB, WB_events) ; 连接WB事件到WB_events类对象
ComObjConnect(WB2, WB2_events) ; 连接WB事件到WB_events类对象
WB.Silent := True ; 这一句可以避免一些网页弹出脚本错误
WB2.Silent := True ; 这一句可以避免一些网页弹出脚本错误
WB.Navigate("http://news.baidu.com")
Return
class WB_events ;链接到前面的Web事件
{
TitleChange(title)
{
TabSetText(HTab, 1, title)
}
NewWindow3(ppDisp, Cancel, dwFlags, bstrUrlContext, bstrUrl) ;在第二页的浏览器打开弹出页面
{
global WB2
Cancel[]:=true ; 取消弹出新窗口
WB2.Navigate(bstrUrl)
GuiControl, Choose, TabGroup,2
}
}
Return
Class WB2_events ;链接到前面的Web事件
{
TitleChange(title)
{
TabSetText(HTab, 2, title)
}
DocumentComplete(NewUrl)
{
}
NewWindow3(ppDisp, Cancel, dwFlags, bstrUrlContext, bstrUrl) ;在同一浏览器打开弹出页面
{
global WB2
Cancel[]:=true ; 取消弹出新窗口
WB2.Navigate(bstrUrl)
}
}
Return
Button前进:
;wb.GoForward()
GuiControl, Choose, TabGroup,2
Return
Button后退:
GuiControl, Choose, TabGroup,1
;wb.Goback()
Return
Button下载:
GuiControl, Choose, TabGroup,2
Return
DisableSetRedraw()
{
static _ := OnMessage(0x0B, "DisableSetRedraw") ; WM_SETREDRAW = 0x0B
return 0
}
TabSetText(HTAB, Item, ItemText) { ; Extracted from just me's Class_GuiTabEx.ahk
Static TCIF_TEXT := 0x0001
Static OffTxP := (3 * 4) + (A_PtrSize - 4)
Static TCM_SETITEM := A_IsUnicode ? 0x133D : 0x1306 ; TCM_SETITEMW : TCM_SETITEMA
Static Size := (5 * 4) + (2 * A_PtrSize) + (A_PtrSize - 4)
VarSetCapacity(TCITEM, Size, 0)
NumPut(TCIF_TEXT, TCITEM, 0, "UInt")
NumPut(&ItemText, TCITEM, OffTxP, "Ptr")
SendMessage, TCM_SETITEM, Item - 1, &TCITEM, , % "ahk_id " . HTAB
}
GuiClose:
ExitApp