青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

yehao's Blog

如何對webbrowser和IE編程(三)

http://blog.csdn.net/shanhe/article/details/397373 
IWebBrowserApp

IWebBrowserApp 接口僅僅在IE中實現(xiàn)。 典型的,你使用InternetExplorer 對象創(chuàng)建一個IE的實例. 然后你使用 IWebBrowserApp 接口操縱此實例. (今天采用IWebBrowser2 替代)IWebBrowserApp 接口繼承自 IWebBrowser, 所以它提供 IWebBrowser 的全部功能。

因為IWebBrowserApp呈現(xiàn)一個IE窗口的實例, 所以它的方法和屬性典型地允許你控制瀏覽器窗口的用戶接口。 這些方法和屬性并非包含在WebBrowser的 IWebBrowser 中的:寄宿control的應(yīng)用程序提供諸如狀態(tài)條, 工具條, 以及菜單條等用戶接口. WebBrowser 控件僅僅用于裝載web頁以及其它類型文件。

IWebBrowserApp 有4個方法和10 各屬性。

方法 IWebBrowserApp 接口的屬性很直觀立如下表, 但是有2個有理由值的討論:GetProperty 和PutProperty. 此兩個方法允許你在IE屬性包(property bag)中存儲一個屬性一邊你能夠在其后重新找回他們。 你將典型地從一個web頁上存儲一些狀態(tài)信息到另一個web頁 (事實上,使用IWebBrowser2 接口你可以在宿主一個WebBrowser 控件時候使用此方法)

Table 6-3. IWebBrowserApp  vtable 次序的方法

方法

 

 

描述

 

 

Quit

 

 

促使 Internet Explorer 窗口關(guān)閉。換句話講,將自動化操作關(guān)閉IE實例

 

 

ClientToWindow

 

 

轉(zhuǎn)換一個點從窗口坐標到客戶坐標。

 

 

PutProperty

 

 

存儲一個屬性值到ie的屬性包,將可以隨手采用GetProperty.獲取

 

 

GetProperty

 

 

獲取先前由 PutProperty.方法存儲的屬性值

 

 

VB代碼:

InternetExplorer1.PutProperty "CurrentPicture", 10
InternetExplorer1.GetProperty("CurrentPicture")

VC++代碼:

CSomeClass::PutGetProperty(VARIANT vtCurrentValue, VARIANT* vtNewValue)
{
   HRESULT hr;
   hr = m_pInternetExplorer->PutProperty(L"CurrentPicture",
                               vtCurrentValue);
 

 

   if (SUCCEEDED(hr))
   {
     // Notice that vtNewValue is already a pointer, so you
     // don't have to pass the address to GetProperty.
     //
     hr = m_pInternetExplorer->GetProperty(L"CurrentPicture", 
                                 vtNewValue);
   }
 

 

   return hr;
}

PutGetProperty 方法接受包含當(dāng)前屬性值的 VARIANT 變量指針且將接收屬性值。

屬性 IWebBrowserApp 接口有10 個屬性. Table 6-4. IWebBrowserApp vtable 次序的屬性

屬性

 

 

描述

 

 

Name

 

 

返回對象的名稱t. (舉例,當(dāng)自動化IE Name 屬性將返回 Microsoft Internet Explorer.)

 

 

HWND

 

 

返回IE窗口的句柄

 

 

FullName

 

 

返回ie可執(zhí)行文件的全路徑 (iexplore.exe).

 

 

Path

 

 

返回IE應(yīng)用程序的全路徑.

 

 

Visible

 

 

監(jiān)測和設(shè)置IE窗口是否可見。 (換句話講,你可與使用此屬性顯示/隱藏)

 

 

StatusBar

 

 

顯示或者隱藏IE狀態(tài)條,也可監(jiān)測當(dāng)前狀態(tài)條

 

 

StatusText

 

 

設(shè)置或隱藏狀態(tài)條文字

 

 

ToolBar

 

 

顯示或者隱藏IE工具條,也可監(jiān)測當(dāng)前工具條狀態(tài) 

 

 

MenuBar

 

 

顯示或者隱藏IE菜單條,也可監(jiān)測當(dāng)前工具菜單態(tài) 

 

 

FullScreen

 

 

設(shè)置或者檢測一個值指示IE當(dāng)前是否最大化顯示。最大化顯示,iE占據(jù)整個屏幕

 

 

Table 6-4 中的屬性列表直截了當(dāng)且易于使用。舉例來說, 如果你想從你的Vb程序中獲取IE狀態(tài)條中的文字,你應(yīng)當(dāng)使用如下代碼:

Dim strStatusText
strStatusText = InternetExplorer1.StatusText

使用MFC包裝類的VC++程序代碼如下:

BSTR bstrStatusText;
HRESULT hr = m_pInternetExplorer->get_StatusText(&bstrStatusText);

 

 

IWebBrowser2

因為COM規(guī)則要求接口恒久不變, 要加入新的工呢高COM,你必須增加新的接口。 新的接口可擴展自其他接口已擴展功能。 舉例,當(dāng)心的需求引入WebBrowser 和Internet Explorer 接口, 開發(fā)者被要求建立一個新的接口: IWebBrowser2.

早期, IWebBrowser2 繼承自 IWebBrowser 和 IWebBrowserApp, 還提供不包含在著兩個接口中的功能. 所以你應(yīng)當(dāng)使用 IWebBrowser2 接口替代 來操縱WebBrowser 控件或者 Internet Explorer.

IWebBrowser2 接口有4個方法和8個屬性.

方法   IWebBrowser2 接口方法如下描述,按照 vtable 次序, in Table 6-5.

也許IWebBrowser2 、接口踵使用最多的方法是ExecWB. 它通過WebBrowser實現(xiàn)了一個 IOleCommandTarget 接口的Exec的包裝實現(xiàn)。 在 ExecWB 方法 被創(chuàng)建前, 你不可以直接從VB中調(diào)用IOleCommandTarget::Exec, 因為VB不可訪問 IOleCommandTarget 接口 ,因而VB不可直接使用該接口的ExecWB方法。 IOleCommandTarget::Exec 方法過去大量使用,所以 WebBrowser 開發(fā)者決定創(chuàng)建ExecWB 以使事情變得容易。

 

Table 6-5. IWebBrowser2  Vtable 次序的方法

方法

 

 

描述

 

 

Navigate2

 

 

功能基于Navigate 方法,不同在于 Navigate2 允許你導(dǎo)航到飛URL表達的地方,例如Windows shell folder. (Windows shell folder 是指向標示符指針或者windows shell命名空間中的 PIDL,)

 

 

QueryStatusWB

 

 

IoleCommandTarget接口的QueryStatus方法在 WebBrowser.中的包裝實現(xiàn)

 

 

ExecWB

 

 

IoleCommandTarget接口的Exec方法在 WebBrowser.中的包裝實現(xiàn)

 

 

ShowBrowserBar

 

 

顯示或者隱藏特定的瀏覽器條該方法僅僅用于InternetExplorer 對象

 

 

 

為什么你無論如何都要調(diào)用ExecWB方法?因為它提供了你需要的功能(通過IOleCommandTarget::Exec)不是暴露于webbrowser接口。你大概疑惑于為社么開發(fā)者不實現(xiàn)擴展屬性和方法。記住:COM規(guī)則是一旦接口發(fā)表就不可改變。所以你不能夠不能增加功能而不創(chuàng)建新的接口。

ExecWB 方法允許WebBrowser 開發(fā)者增加新的功能而不用創(chuàng)建新的接口。再之, 那是由WebBrowser 通過 ExecWB 代表性的暴露不常用的工的途徑, 譬如調(diào)用 Save As 對話框或者縮放web頁的字體。  ExecWB 工作的方法是傳遞一個你想調(diào)用的command ID 和必需的參數(shù). 太多的 command IDs ,他們包含于OLECMDID 實現(xiàn)文檔頭文件he DocObj.h .

 

 

作為舉例, 支持縮放web頁的內(nèi)容字體。Internet Explorer 允許你通過View菜單的Text Size子菜單改變字體的大小從最小到最大。 ExecWB 方法暴露了允許你改變顯示在瀏覽器中的文字大小。對于Zoom 命令, 你可指定特殊值0123, or 4,  是最小字體 ,4是最大字體。以下舉例為改變字體為最大(VB):

WebBrowser1.ExecWB OLECMDID_ZOOM, OLECMDEXECOPT_DONTPROMPTUSER, _
                   CLng(4), Null

再次代碼中, 我調(diào)用 ExecWB 方法, 傳遞OLECMDID_ZOOM 常量給第一個參數(shù). 此常量指定 zoom 操作將被執(zhí)行。 第二個參數(shù)傳遞給ExecWB 不要提示用戶。另外的選擇, 你可以提醒用戶而是用OLECMDEXECOPT_PROMPTUSER. (見 DocObj.h.)

第三個輸入?yún)?shù)指示要設(shè)定的文字尺寸。我想是文字盡可能的大,所以我指定了4 。注意我在調(diào)用中使用了VB的Clng函數(shù)包裝此值,轉(zhuǎn)換我指定的此值為一個variant—輸入需要的類型.最后為一個輸出參數(shù)包含任何返回值。因為返回值不需要關(guān)心,我傳遞Null.

 

 

屬性 IWebBrowser2 接口有8個屬性。 (Table 6-6 按照vtable次序展示其)。他們都很直觀,我僅僅解釋恰宏很特別的一個—AddressBar.

Table 6-6. IWebBrowser2 Properties in Vtable Order

屬性

 

 

描述

 

 

ReadyState

 

 

返回WebBrowser 的狀態(tài)(換句話講 ,該屬性指示文檔是否完成裝載).盡管你可以使用 ReadyState 屬性使用 DocumentComplete 時間檢測文檔是否裝載還是比較好些。 (那意味著所有HTML和文檔被裝載

 

 

Offline

 

 

.返回或者設(shè)置檢測webbrowser是否處于脫機模式的變量

 

 

Silent

 

 

返回或設(shè)置 WebBrowser 是否處于沉默模式。如果處于沉默模式,意味著沒有對話框可以被顯示.

 

 

RegisterAsBrowser

 

 

.設(shè)置或者檢測Webbrowser是否是作為頂層瀏覽器被登記

 

 

RegisterAsDropTarget

 

 

.設(shè)置或返回WebBrowser是否作為導(dǎo)航的拖放對象 。如果登記委托放對象,用戶可直接拖放連接到瀏覽器  

 

 

TheaterMode

 

 

返回或者設(shè)置Internet Explorer是否處于theater 或者 normal window 模式.。在theater 模式, Internet Explorer占據(jù)整個屏幕就像處于FullScreen 模式,但也有最小化的用戶接口元素 (此屬性僅僅展示于InternetExplorer對象)

 

 

AddressBar

 

 

顯示或者隱藏地址欄(此屬性僅僅展示于InternetExplorer 對象)

 

 

Resizable

 

 

返回或者設(shè)置Internet Explorer是否可被調(diào)整大小你可利用此屬性防止用戶改變webbrowser的大小(此屬性僅僅展示于InternetExplorer 對象)

 

 

 

 

AddressBar 屬性允許你顯示/隱藏Internet Explorer 地址欄—一個包含可輸入URL的文本框 允許你導(dǎo)航到某個Url。 能夠顯示或者隱藏地址條允許你完全控制你的用戶的導(dǎo)航體驗

在你的企業(yè)網(wǎng)絡(luò)或者中小學(xué)控制用戶導(dǎo)航體驗.在此環(huán)境下,你將控制用戶的導(dǎo)航以至于可確定某些不恰當(dāng)?shù)仨撁娌豢稍L問。你可創(chuàng)建你自己的瀏覽器。但是如果你沒有時間和資源這么做,你可以自動化IE來代替.自動化IE允許你管掉所有的用戶界面允許用戶導(dǎo)航到某個web頁,像菜單條, 工具條,以地址欄. 之后你可建立一定數(shù)量的可訪問web頁連接列表給用戶。

 

關(guān)掉這些用戶接口很容易. VB代碼:

InternetExplorer1.AddressBar = False
InternetExplorer1.ToolBar = False
InternetExplorer1.MenuBar = False

posted on 2012-09-22 21:32 厚積薄發(fā) 閱讀(551) 評論(0)  編輯 收藏 引用 所屬分類: Windows編程

導(dǎo)航

<2025年11月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

統(tǒng)計

常用鏈接

留言簿

隨筆分類

文章分類

文章檔案

搜索

最新評論

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美激情乱人伦| 国产精品一区二区久久精品| 国产一级精品aaaaa看| 欧美一区二区在线看| 亚洲一区二区在线| 国产精品视频| 久久久久久亚洲精品不卡4k岛国| 欧美诱惑福利视频| 亚洲国产精品va在看黑人| 亚洲国产精品va在线看黑人| 欧美顶级艳妇交换群宴| 在线天堂一区av电影| 一区二区欧美在线| 国产午夜精品久久久| 欧美xxxx在线观看| 欧美日韩一区二区国产| 欧美亚洲在线| 麻豆成人在线播放| 国产精品99久久久久久久久| 午夜激情亚洲| 亚洲激情偷拍| 亚洲欧美成人一区二区三区| 在线视频成人| 99re66热这里只有精品4| 国产日韩在线一区二区三区| 欧美黄色一区| 国产女主播一区二区三区| 欧美刺激性大交免费视频| 欧美午夜精品伦理| 欧美1区2区视频| 国产精品久久精品日日| 男同欧美伦乱| 国产伦精品一区二区三区| 欧美二区乱c少妇| 国产精品老牛| 亚洲国产精品久久精品怡红院 | 欧美一区激情视频在线观看| 久久精品一区二区三区中文字幕| 一区二区三欧美| 日韩视频在线一区二区三区| 亚洲三级国产| 亚洲高清在线精品| 伊人久久综合| 欧美国产日韩精品| 国产精品综合久久久| 亚洲欧洲日产国产综合网| 国产日韩专区在线| 日韩网站在线看片你懂的| 影音先锋亚洲视频| 午夜精品久久久久久| 99re6这里只有精品| 久久频这里精品99香蕉| 欧美一区日韩一区| 国产精品极品美女粉嫩高清在线 | 国产精品vvv| 欧美激情一二区| 国产日韩欧美精品在线| 中文在线不卡| 宅男噜噜噜66一区二区 | 欧美~级网站不卡| 国产手机视频精品| 亚洲一区三区电影在线观看| 亚洲色图综合久久| 欧美麻豆久久久久久中文| 欧美成人自拍视频| 亚洲高清免费在线| 看片网站欧美日韩| 欧美成人资源| 亚洲日本电影在线| 免费中文字幕日韩欧美| 免费中文日韩| 亚洲第一区在线观看| 久久久久9999亚洲精品| 老司机精品视频网站| 精品动漫av| 久热精品视频在线观看一区| 久久午夜电影网| 在线视频国产日韩| 免费视频最近日韩| 亚洲日本成人网| 亚洲午夜久久久久久久久电影院 | 亚洲一区二区三区成人在线视频精品| 一区二区三区久久久| 国产精品高潮呻吟久久av黑人| 亚洲色图在线视频| 久久99在线观看| 在线观看成人一级片| 美女日韩在线中文字幕| 亚洲精华国产欧美| 亚洲视频一区| 国产在线成人| 嫩草影视亚洲| 亚洲午夜电影网| 久久久久久999| 亚洲精品美女在线观看播放| 欧美日韩日日夜夜| 欧美一区2区视频在线观看| 欧美成人精品| 亚洲欧美日韩综合aⅴ视频| 国产欧美在线观看| 欧美成人第一页| 正在播放亚洲| 欧美成人情趣视频| 亚洲性感美女99在线| 激情欧美丁香| 欧美三区不卡| 久久一区亚洲| 国产精品99久久久久久久久| 久久艳片www.17c.com| 99re66热这里只有精品3直播| 国产伦精品一区二区三区免费 | 欧美一区日本一区韩国一区| 亚洲高清视频一区二区| 欧美亚洲综合另类| 99视频超级精品| 国产亚洲a∨片在线观看| 欧美国产精品日韩| 久久激情五月婷婷| 在线一区二区三区四区| 欧美黄污视频| 久久精品国产欧美激情| 亚洲天堂网在线观看| 亚洲电影在线观看| 国产精品亚洲片夜色在线| 欧美精品激情在线观看| 久久国产精彩视频| 亚洲欧美不卡| 亚洲天堂男人| 日韩视频专区| 91久久黄色| 欧美激情一区二区三区高清视频| 久久精品亚洲精品| 欧美一区二区三区视频在线观看 | 国产午夜精品在线观看| 欧美偷拍一区二区| 欧美精品一区二区在线观看| 欧美主播一区二区三区| 香蕉乱码成人久久天堂爱免费| 国产精品99久久久久久久vr | 久久成人18免费观看| 亚洲资源av| 亚洲男人的天堂在线aⅴ视频| 99国产精品久久久| 日韩一区二区精品在线观看| 亚洲精品欧美日韩专区| 亚洲国产精品99久久久久久久久| 一色屋精品视频免费看| 好吊色欧美一区二区三区视频| 国产一区二区三区精品久久久| 国产日韩精品久久久| 国产日韩欧美黄色| 狠狠干成人综合网| 一区二区三区亚洲| 最新成人在线| 99re这里只有精品6| 亚洲性图久久| 欧美在线高清视频| 久久久精品国产99久久精品芒果| 久久久久久电影| 免费成人性网站| 亚洲国产一二三| 99精品视频网| 亚洲免费在线视频| 久久精品视频亚洲| 欧美 日韩 国产一区二区在线视频| 欧美18av| 国产精品成人观看视频国产奇米| 国产精品美女黄网| 在线成人性视频| 一区二区精品国产| 午夜精品剧场| 嫩草国产精品入口| 一区二区三区国产在线观看| 亚洲综合丁香| 乱码第一页成人| 欧美深夜福利| 狠狠爱www人成狠狠爱综合网| 亚洲黑丝在线| 欧美亚洲网站| 亚洲福利国产| 亚洲欧美精品在线| 欧美xx69| 国产亚洲欧美一区| 一区二区福利| 久热综合在线亚洲精品| 99精品欧美一区二区三区综合在线| 欧美一区二区三区四区视频| 欧美成人精精品一区二区频| 国产精品五区| 99re在线精品| 猛干欧美女孩| 亚洲一区欧美激情| 欧美精品久久久久a| 黄色成人91| 亚洲欧美日韩在线高清直播| 亚洲高清视频的网址| 欧美自拍偷拍午夜视频| 国产精品v欧美精品v日韩| 亚洲国产精品黑人久久久| 久久激情视频免费观看|