【正文】
。調(diào)用組件添加網(wǎng)址的方法 39。添加表單的過程,該過程先傳遞表單名稱和提交目標(biāo) Public Sub addform(ByVal fm As String, ByVal action As String) With Formweb . = 名稱: + fm + vbCrLf . = 提交目標(biāo): + action + vbCrLf End With End Sub 39。添加鏈接的過程 Public Sub addlink(ByVal link As String) Dim j As Integer Dim same As Boolean same = False 39。顯示窗體的過程 Public Sub showform() 1 End Sub 39。 d、添加表單和相關(guān)控件的方法。由于類模塊包含的過程一般需供外部程序調(diào)用,因此均定義為“Public”類型。使用網(wǎng)際快車下載鏈接的過程 Sub useflashdownlink() On Error Resume Next Dim JetCarCatch As Object Dim i, j As Integer Set JetCarCatch = CreateObject() If Err <> 0 Then MsgBox 未正確安裝網(wǎng)際快車! Else j = 0 For i = 0 To 1 If (i) = True Then j = j + 1 End If Next i ReDim params(j * 2) params(0) = strurl j = 0 For i = 0 To 1 If (i) = True Then params(j * 2 + 1) = (i) params(j * 2 + 2) = 鏈接 j = j + 1 End If Next i params End If End Sub 39。使用網(wǎng)絡(luò)螞蟻下載圖片的過程 Sub useantdownpic() On Error Resume Next Dim NetAntsApi As Object Dim i, j As Integer 39。使用網(wǎng)際快車下載圖片的過程 Sub useflashdownpic() On Error Resume Next Dim JetCarCatch As Object Dim i, j As Integer 39。 在VB6中單擊“文件”菜單的“新建工程”子菜單,在彈出的“新建工程”窗體中選擇“ActiveX DLL”。使用了VB6開發(fā)組件,該組件可通過IE右鍵菜單項(xiàng)激活,運(yùn)行后以可視化的方式顯示當(dāng)前網(wǎng)頁(yè)包含的各類資源(頁(yè)面腳本、超鏈接、表單單元和圖片),并可調(diào)用網(wǎng)際快車和網(wǎng)絡(luò)螞蟻進(jìn)行相關(guān)資源的下載。 (2)通過函數(shù)創(chuàng)建:通過CreateObject 函數(shù)和GetObject 函數(shù)創(chuàng)建COM組件,且不需事先聲明,靈活性較強(qiáng),具體如下所述: CreateObject 函數(shù):該函數(shù)用于創(chuàng)建并返回一個(gè)COM對(duì)象實(shí)例。 (8)Type屬性:該屬性返回表單中HTML控件的類型。 (4)images集合:該集合代表頁(yè)面中的所有圖片。下面將使用VB6開發(fā)COM組件,并通過IE右鍵菜單來創(chuàng)建組件實(shí)例,實(shí)現(xiàn)功能強(qiáng)大的IE輔助工具。其實(shí)在IE二次開發(fā)中還存在有相當(dāng)多的高級(jí)方法,如利用COM組件在IE中的應(yīng)用。獲取網(wǎng)頁(yè)的表格對(duì)象 Set Tables = (Table) (3)由于網(wǎng)頁(yè)一般包含多個(gè)表格,可通過HTMLTable對(duì)象進(jìn)行處理,示例代碼如下所示: Dim Table1 As HTMLTable For Each Table1 In Tables 39。 (二)程序?qū)嵗? 下面的例程實(shí)現(xiàn)網(wǎng)頁(yè)數(shù)據(jù)的獲取。當(dāng)觸發(fā)DocumentComplete事件時(shí),并非代表頁(yè)面已全部調(diào)入。該對(duì)象的常用屬性和方法如下所述: cells屬性:該屬性返回行包含的單元格集合對(duì)象。 vAlign屬性:該屬性返回單元格的垂直對(duì)齊方式。 colSpan屬性:該屬性返回單元格的列合并數(shù)。 deleteRow方法:該方法用于刪除表格行。 (4)HTMLElementCollection對(duì)象:該對(duì)象可獲取各類HTML對(duì)象的集合,如網(wǎng)頁(yè)的表格或表單的集合,隨后即可遍歷該集合來選擇所需的對(duì)象,其常用屬性和方法如下所述: length屬性:該屬性返回集合的成員數(shù)。 forms屬性:該屬性返回網(wǎng)頁(yè)包含的所有表單對(duì)象。 innerText屬性:該屬性返回網(wǎng)頁(yè)包含的所有文字。 target屬性:該屬性用于設(shè)置鏈接的方式。HTML對(duì)象庫(kù)提供了大量的對(duì)象,這些對(duì)象和各類HTML標(biāo)記相對(duì)應(yīng),如熟悉的“<a>”、“<Table>”、“<body>”和“<form>”標(biāo)記,一些常用HTML對(duì)象的知識(shí)點(diǎn)如下所述: (1)HTMLAnchorElement對(duì)象:該對(duì)象代表網(wǎng)頁(yè)中超級(jí)鏈接(即“<a>”)標(biāo)記,其常用屬性和方法如下所述: href屬性:該屬性用于設(shè)置鏈接的目標(biāo)。 (9)getElementsByTagName方法:該方法用于獲取指定標(biāo)記的對(duì)象。 (5)LocationURL屬性:該屬性返回當(dāng)前瀏覽的網(wǎng)址。該控件的常用屬性和方法如下所述: (1)AddressBar屬性:該屬性用于獲取瀏覽器的地址欄對(duì)象。設(shè)置為“導(dǎo)出”操作 Import = False 在“導(dǎo)入收藏夾”單選框的Click事件輸入以下代碼: 39。 在VB6中新建工程,然后在窗體上放置一個(gè)按鈕,一個(gè)通用對(duì)話框,一個(gè)Frame控件,并放置兩個(gè)單選框,如圖2所示。 (二)程序?qū)嵗? IE使用一定時(shí)間后,在收藏夾中往往積累了大量的網(wǎng)址,在重裝系統(tǒng)或計(jì)算機(jī)中存在多用戶時(shí),手工方式備份和恢復(fù)收藏夾非常麻煩。 ShellWindows對(duì)象返回的瀏覽窗口對(duì)象包含了IE和Explorer窗口(即資源管理器或“我的電腦”窗口),但I(xiàn)E瀏覽器的宿主程序?yàn)椤啊?,而資源管理器或“我的電腦” 的宿主程序?yàn)椤啊?,因此需?duì)每一個(gè)對(duì)象按其FulName屬性來判斷是否為IE瀏覽器。在VB6中可在“引用”對(duì)話框選擇“Microsoft Internet Controls”類型庫(kù)。單擊該按鈕將彈出一個(gè)確認(rèn)框,單擊“確定”按鈕,將使用對(duì)話框來顯示當(dāng)前IE頁(yè)面的所有鏈接目標(biāo)。 在<Test IE GUID>下建立一個(gè)新的字符串類型值,名稱為“Script”,該值代表單擊按鈕后運(yùn)行的腳本文件全路徑名稱。 在<Test IE GUID>下新建一個(gè)String類型值,名稱為“Icon”,該值代表當(dāng)按鈕失去焦點(diǎn)時(shí)的圖標(biāo),一般包括圖標(biāo)文件全路徑名和圖標(biāo)索引,也可直接輸入圖標(biāo)文件名。建議在修改前記錄NextId值,在建立GUID需將該值遞增1,如原NextId為“dword:00002009”,那么建立新GUID后,NextId值應(yīng)修改為“dword:000020a”(按十六進(jìn)制計(jì)算)。 (一)相關(guān)知識(shí)點(diǎn) 添加IE任務(wù)欄按鈕需對(duì)注冊(cè)表進(jìn)行多步操作,因此建議讀者先備份注冊(cè)表。說明:按鏈接和圖片的數(shù)量進(jìn)行計(jì)算,并重定義數(shù)組 ReDim params(*2+*2) j= k= params(0)= for i = 0 to j params(i*2+1)=links(i).href params(i*2+2)=links(i).innerText next for j = 0 to k 39。 (2)定義新的下載列表數(shù)組。 (二)程序?qū)嵗? 網(wǎng)際快車和網(wǎng)絡(luò)螞蟻在下載全部鏈接時(shí)均無法批量下載以“<IMG>”標(biāo)記方式直接嵌入網(wǎng)頁(yè)的圖片,僅能使用下載單個(gè)鏈接的方法逐一下載,效率大為降低。類名為“”。 (一)相關(guān)知識(shí)點(diǎn) (1)Netscape對(duì)象:該對(duì)象用于啟動(dòng)網(wǎng)絡(luò)快車,類名為“”。在確認(rèn)框中顯示鏈接數(shù)量 result=(共有+cstr()+個(gè)鏈接,是否準(zhǔn)備開新窗口打開?) 39。然后在該項(xiàng)中建立一個(gè)DWORD鍵“Contexts”,值為0x35(即單擊頁(yè)面時(shí)顯示該菜單項(xiàng))。單擊“在新窗口中打開所有鏈接”菜單項(xiàng),將彈出一個(gè)顯示鏈接數(shù)的確認(rèn)對(duì)話框,單擊“是”按鈕后將對(duì)每一個(gè)鏈接新建IE窗口進(jìn)行瀏覽。 有時(shí),右鍵菜單需要在特定條件下顯示,因此需在前述新建的注冊(cè)項(xiàng)下再建立一個(gè)DWORD類型鍵,鍵名為Contexts,如未設(shè)置Contexts項(xiàng),則新建的IE右鍵菜單項(xiàng)會(huì)在單擊任何頁(yè)面對(duì)象時(shí)出現(xiàn)。 item方法:該方法用于訪問指定的鏈接。通過external對(duì)象,可訪問當(dāng)前IE頁(yè)面的各個(gè)控件,是IE右鍵菜單開發(fā)的關(guān)鍵。 (4)“使用網(wǎng)際快車下載全