IE里的探索之向標準上下文相關菜單里添加條目 (作者:青蘋果工作室編譯 2001年02月08日 13:28)
本文描述在Microsoft Internet Explorer中執行URL指定的腳本時,如何向它的標準上下文相關菜單中添加菜單項。
如果你想向 Internet Explorer 的標準上下文相關菜單中添加菜單項,那么你應該熟悉注冊表以及上下文相關菜單。有關上下文相關菜單的詳細內容,可以參閱 SDK 中關于 Windows Shell API 的文檔。 這里討論的實現方式對 Internet Explorer 4.0 以上版本有效,Internet Explorer的早期版本不支持這個功能。
實現步驟 按以下步驟在 Internet Explorer 的標準上下文相關菜單中添加菜單項:
1. 在指定位置:
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt
以你希望在上下文相關菜單中顯示的文本創建新鍵。
結果類似于:
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt\<Menu Text>
以你希望在上下文相關菜單中顯示的文本替換<Menu Text>。鍵名中可以包含字符 (&), 它后面的字符將被加上下劃線,并作為快捷鍵。
2. 把鍵值設置為指向一個網頁的 URL,該頁應包含你希望菜單項執行的腳本。此腳本能從對象 external 的屬性 menuArgument 中獲得上級 window 對象和執行此菜單項的屏幕。
3. 可選。在以下位置:
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt\<Menu Text>
創建一個二進制值,Context。
結果類似于:
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt\<Menu Text>\Contexts
設置 Contexts 的值以指明在標準的上下文相關菜單中,你的菜單項應該出現在哪些上下文里,這里我們使用由以下值按邏輯或運算所組成的掩碼:
上下文 = 值
默認 = 0x1
圖形 = 0x2
控件 = 0x4
表格 = 0x8
選中的文本 = 0x10
錨 = 0x20
例如,如果你希望在默認的上下文相關菜單里,和在上下文是選中的文本時,你的菜單項都出現,把 Context 的值設置為 0x11。
4. 可選。在以下位置:
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt\<Menu Text>
創建一個 DWORD 值,Flags。
結果類似于:
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt\<Menu Text>\Flags
將 Flags 的值設置為 0x1 會使腳本的運行方式就和通過方法 showModalDialog 調用它時一樣。和方法 showModalDialog 不同,腳本可以通過對象 external 的屬性 menuArgument 訪問上級 window 對象。
通過以“路徑,resource_id”格式所指定的資源的路徑和引用標志,我們可以引用保存在資源中的字符串。例如,如果你想引用 Example.dll 中的字符串資源 123,可以使用 "Example.dll, 123"。
|