在Lazarus和Delphi上使用firefox的gecko内核控件
一般,在delphi上,使用的都是TWebBrowser的IE内核的控件,使用很方便,直接把控件拖到窗体上就行了。但是,在跨平台的时候,就无能为力了。这时候,Lazarus+firefox是个更好的选择。下面,讨论一下,怎么在Lazarus上使用firefox内核打开网页。
首先:准备工作,需要一个firefox的运行库,和一个Lazarus的控件。
1.运行库,就是xulrunner,可以在mozilla的ftp上下载,最新的稳定版上1.9.4,针对不同的平台,有不同的文件。我们就下载win32的sdk文件 xulrunner-1.9.1.4.en-US.win32.zip。
2.就是Lazarus的控件geckoport
然后:安装
1.把下载下来的GeckoPort_20091130解压到Lazarus的components目录下
用Lazarus打开GeckoPort_20091130Components目录下的GeckoComponents.lpk包文件,
安装,会提示重新编译Lazarus。重新编译后,组件面板就出现一个gecko的控件面板,里面就一个控件,就是
TGeckoBrowser。控件安装完成。
2.使用
在Lazarus里面,打开附带的simpleapps示例,添加edit和button,编辑button的click事件
procedure TForm1.Button1Click(Sender: TObject); begin GeckoBrowser1.LoadURI(edit1.Text);//打开edit1里面的网址 end;
编译。
把下载下来的xulrunner的包解压,拷贝里面的bin目录到编译后的exe文件相同目录下,修改bin文件名为xulrunner,运行gbrowser.exe
注意:
在formshow的事件里面,要调用LoadURI一次,可以传递默认主页,甚至“about:blank”。
就是:
GeckoBrowser1.LoadURI('about:blank');
否则,程序会报错:
___________
其实,delphi上的控件安装也是类似的,就是注意把运行库放到可执行文件下面,和改名。
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。
请问楼主,GeckoPort 详细使用文档,哪里有呢?
参考gecko的文档吧,或者将就看代码吧