Delphi中代替WebBrowser控件的第三方控件


這幾天,接觸到在delphi中內嵌網頁,用delphi7自帶的TWebBrowser控件,顯示的內容與本機IE8顯示的不一樣,但是跟裝IE8之前的IE6顯示一個效果。現在趕腳是下面兩個原因中的一個:

1.Navigate這個方法用的有點問題,里面的參數不同及Navigate2等不同方法,調用的IE內核版本不同

2.這個自帶的控件用着不爽,直接換一個第三方控件

對於第一點,找了半天冒發現什么,趕緊轉換思路,於是找到了

EmbeddedWB這個第三方控件。。。

下載址:http://www.delphifans.com/SoftView/SoftView_2705.html或http://d.download.csdn.net/detail/randb/631380
delphi7中安裝方法:
http://salomi.blog.51cto.com/389282/125954
另附幾個我為了解決這個問題趕腳有用的網址:
Delphi第三方控件EmbeddedWB的使用方法:
http://hi.baidu.com/cyrist/blog/item/e8782ea4c64919ec9052eedc.html
一個具有參考價值的帖子:
http://topic.csdn.net/u/20120310/12/32b22ac0-8e5f-4f9f-9083-b8c7aaa52380.html?seed=587680286&r=77849641#r_77849641
如何用Delphi調用IE打開網頁:http://blog.csdn.net/mrwu9902/article/details/4954555
關於調用其他瀏覽器內核的控件(我安裝了使用火狐內核的Mozilla ActiveX控件,但是代碼調用的時候,報錯了,沒怎么管了,有興趣的同仁可以研究下):

http://topic.csdn.net/u/20090527/09/58387179-3fe8-49d7-9d95-9d9c00767e65.html

http://topic.csdn.net/u/20120215/17/8501dc38-742e-47cb-bad1-35ef2a7bd0cc.html
http://delphi.about.com/b/2005/01/15/using-firefox-instead-of-twebbrowser-in-delphi-applications.htm
http://www.paranoia.clara.net/articles/taming_the_lizard_with_delphi.html
http://www.adamlock.com/mozilla/
做了這些功課,希望該問題下周一能夠順利解決。。。。。。
//////////////////////////////////////2012.03.25更新一下//////////////////////////////////////////////////////////
最近一段時間沒時間關注這個問題了,不曉得那個網頁是里面用了腳本的原因還是其他什么原因,唉,反正是結果目前還沒得到我想要的
1.EmbeddedWB與TWebBrowser實現效果一樣,跟IE8效果不一樣,有一種說法是“這兩個控件調用的不是本機的IE內核,在delphi7中而是調用的IE6內核”。。。自己目前還不清楚。。。
2.谷歌控件 Delphi Chromium Embedded:http://code.google.com/p/delphichromiumembedded/
這個裝好了以后,要把exe的輸出路徑設置到DEF/win32/bin,如果修改源代碼,貌似是可以不用總是把生成的exe放那個目錄的,沒實現我想要的效果,就沒研究這個問題了。。。
這個用了之后,打開那個網頁的時候,半天沒反應,窗口好像死在那了。。。有哪位高手看到這,知道原因的,還請留言指點幾句。。。
3.還有GeckoBrowser for Delphi這個控件,還沒研究出來怎么用這玩意。。。
4.這一種自己可以改變下IE瀏覽器窗口的顯示
 
procedure OpenInIE(aURL: string);  
    var IE: Variant;  
begin  
    IE := CreateOleObject('InternetExplorer.Application');  
  
    IE.Visible := true; //可見   
    IE.left := 0;  
    IE.top := 0;  
    IE.height := 1050; //高度   
    IE.width := 1680; //寬度   
    IE.menubar := 0; //取消菜單欄   
    IE.addressbar := 0; //取消地址欄   
    IE.toolbar := 0; //取消工具欄   
    IE.statusbar := 0; //取消狀態欄   
    IE.resizable := 0; //不允許用戶改變窗口大小   
    IE.Navigate(aURL);  
end;  

 

5.
 
procedure TForm1.Button2Click(Sender: TObject);  
begin  
  ShellExecute(Handle, 'open', 'IExplore.EXE', 'http://www.baidu.com', nil, SW_SHOWNORMAL);  
end;  

6.
 
procedure TIEShowFrm.FormCreate(Sender: TObject);  
var  
  Flags: OLEVariant;  
begin  
  //WebBrowser1.Navigate(WideString('http://www.baidu.com'), Flags, Flags, Flags, Flags);   
  WebBrowser1.Navigate('http://www.baidu.com');  
end;  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM