【 tulaoshi.com - Delphi 】
第一步:根据需要,用FrontPage或者Dreamweaver做一个界面,界面加上图片,还可加上漂亮的动态Flash。Web界面与程序事件联系在一起的地方就是“超链接”,我们以一个简单的播放器程序为例。
比如:要做一个播放器,有“播放”按钮和“停止”按钮,分别设置“播放”按钮的链接为“Play_”;“停止”按钮的超链接为“Stop_”。并保存这个网页文件为“WebFrm.htm”。
第二步:在Delphi中新建一个Project,设置Form1的长宽和刚才设计网页一样大小,在Form1上放置一个WebBrowser1控件,设置WebBrowser1的Align属性为alClient,我们是利用TWebBrowser来显示网页界面的。代码如下:
procedure TForm1.FormCrea
teSender TObject
begin
WebBrowser1.NavigateD播放器WebFrm.htm//把“D播放器”换成你保存WebFrm.htm的目录
end
第三步:关键就在这步了。在响应Web界面上“播放”和“停止”的点击事件时,就要用到TWebBrowser的OnBeforeNavigate2事件,它的代码如下:
procedure TForm1.WebBrowser1BeforeNa
vigate2Sender TObject
const pDisp IDispatch var URL Flags TargetFrameName PostData
Headers OleVariant var Cancel WordB ool
在它的七个参数中,我们会用到URL和Cancel这两个参数,在本例中,当你点击“播放”按钮时,URL就会返回“D播放器WebFrm.htmPlay_”这行字符串当点击“停止”按钮时,URL则返回“D播放器WebFrm.htmStop_”这行字符串。Cancel这个参数的用途是:当点击“播放”按钮时,Web想要跳转到“D播放器WebFrm.htmPlay_”这个页面,但根本没这个页面,WebBrowser1就会出现我们上网经常看到的“该页无法显示”这个页面,这时把Cancel设为TrueWebBrowser1会断开链接,就不会出现以上情况了。
具体代码如下:
procedure TForm1.WebBrowser1BeforeNa
vigate2Sender TObject
const pDisp IDispatch var URL Flags TargetFrameName PostData
Headers OleVariant var Cancel WordB
ool
begin
if PosPlay_ URL > 0 then begin //当返回的URL含有“Play_”,就执行播放的代码
ShowMessage播放//为简单起见,用来代替播放的代码。
Cancel = True
end
else
if PosStop_ URL > 0 then begin
ShowMessage停止//为简单起见,用来代替播放的代码。
Cancel = True
end
end
(以上代码Delphi6+Win2000编译通过。)