最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

Delphi_中WebBrowser控件详解实例[1]

来源:动视网 责编:小OO 时间:2025-10-02 01:04:02
文档

Delphi_中WebBrowser控件详解实例[1]

Delphi中WebBrowser控件详解实例2008-10-18下午06:58很久都没有原创了,前几天帮朋友做了个网址发布程序,主要应用到了WebBrowser控件。今天主要给大家演示一下过程,让大家学习一下Delphi工具。WebBrowser功能:1。自动加载网页2。去除WebBrowser滚动条3。WebBrowser自身打开页面4。禁止右键1。首先,新建一个FROM窗体:2。加入一个WEBBROWSER控件3。调整后如下:4.这样一个webbrowser就完成了,下一步我们来让程序打
推荐度:
导读Delphi中WebBrowser控件详解实例2008-10-18下午06:58很久都没有原创了,前几天帮朋友做了个网址发布程序,主要应用到了WebBrowser控件。今天主要给大家演示一下过程,让大家学习一下Delphi工具。WebBrowser功能:1。自动加载网页2。去除WebBrowser滚动条3。WebBrowser自身打开页面4。禁止右键1。首先,新建一个FROM窗体:2。加入一个WEBBROWSER控件3。调整后如下:4.这样一个webbrowser就完成了,下一步我们来让程序打
Delphi 中WebBrowser控件详解实例

2008-10-18 下午 06:58

很久都没有原创了,前几天帮朋友做了个网址发布程序,主要应用到了WebBrowser控件。 

今天主要给大家演示一下过程,让大家学习一下Delphi工具。

WebBrowser功能:

1。自动加载网页

2。去除WebBrowser滚动条

3。WebBrowser自身打开页面

4。禁止右键

1。首先,新建一个FROM窗体:

2。加入一个WEBBROWSER控件

3。调整后如下:

4.这样一个webbrowser就完成了,下一步我们来让程序打开后自动加载一个网页。

核心代码:WebBrowser1.Navigate('http://v.28.la');

双击窗体灰色处,对窗体进行初始化,在代码窗口中输入(Begin 与 End间输入核心代码):

procedure TForm1.FormCreate(Sender: TObject);

begin

WebBrowser1.Navigate('http://v.28.la');   //窗体初始化完成WEBBROWSER加载一个网页

end;

5。下面我们来实现禁止WEBBROWSER控件的滚动条功能:

核心代码:WebBrowser1.oleobject.Document.body.Scroll:= ‘no’; 

    利用这个代码去掉滚动条的前提是webbrowser中必须有打开的网页,也就是在网页加载完

完毕后再去掉滚动条。所以首先要判断页面是否加载完毕,如果加载完毕,就执行上面的语句

去掉滚动条。这时就要引入一个按扭控件来触发程序

加入SPEEDBUTTEN

调整形后:

好了,现在可以实现禁止滚动条的功能了:

第一步:在WebBrowser1DocumentComplete事件中置一个标志tag:=1(代表加载完毕)

单击WEBBROWSER控件,在WebBrowser属性

的EVENS事件中找到WebBrowser1DocumentComplete    (双击)

然后在代码窗口中输入:

procedure TForm1.WebBrowser1DocumentComplete(Sender: TObject;

const pDisp: IDispatch; var URL: OleVariant);

begin

tag:=1; //去掉Webbrowser1滚动条的标志

end;

对SpeedButten控件操作:(双击onClick)

加入如下代码:

procedure TForm1.SpeedButton1Click(Sender: TObject);

var

Doc: IHTMLDocument2;

begin

tag := 0; //去掉Webbrowser1滚动条的标志

WebBrowser1.Navigate2(’http://www.baidu.com’);

while(tag=0) do Application.ProcessMessages;

WebBrowser1.oleobject.Document.body.Scroll := ‘no’;

end;

注意:使用前必须在uses中加入mshtml;

这样WebBrowser就禁止了滚动条。主要应用到了IHTMLDocument2。

6。

让Webbrowser中的链接点击时在自身窗口打开:(单击WebBrowser控件,属性中的

EVENS事件,双击NewWindow2)

代码窗口中输入:

procedure TForm1.WebBrowser1NewWindow2(Sender: TObject; var ppDisp: IDispatch;

var Cancel: WordBool);

begin

   // 將新視窗在自身開啟

        ppdisp := webBrowser1.Application;

end;

7。最后是禁用WebBrowser中的右键功能,放一个ApplicationEvents控件:

ApplicationEvents控件属性Evens事件中双击Onmessage:

在代码窗口中输入:

procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;

var Handled: Boolean);

begin

if (Msg.message = wm_rbuttondown) or (Msg.message = wm_rbuttonup) or

    (msg.message = WM_RBUTTONDBLCLK)   then

begin

    if IsChild(Webbrowser1.Handle, Msg.hwnd) then

      Handled := true;

end;

end;

到此完成对程序的制作,调试

去滚动条后:

--------------------------------------------------------

===================================

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, OleCtrls, SHDocVw,mshtml, AppEvnts;

type

TForm1 = class(TForm)

    WebBrowser1: TWebBrowser;

    Button1: TButton;

    ApplicationEvents1: TApplicationEvents;

    procedure WebBrowser1DocumentComplete(Sender: TObject;

      const pDisp: IDispatch; var URL: OleVariant);

    procedure Button1Click(Sender: TObject);

    procedure ApplicationEvents1Message(var Msg: tagMSG;

      var Handled: Boolean);

private

    { Private declarations }

public

    { Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.WebBrowser1DocumentComplete(Sender: TObject;

const pDisp: IDispatch; var URL: OleVariant);

begin

tag:=1;

end;

procedure TForm1.Button1Click(Sender: TObject);

var

a: IHTMLDocument2;

begin

tag := 0;

WebBrowser1.Navigate('http://www.baidu.com');

while(tag=0) do Application.ProcessMessages;

WebBrowser1.oleobject.Document.body.Scroll := 'no';

a :=WebBrowser1.Document as IHTMLDocument2;

a.Get_ParentWindow.ScrollBy(0,20);

end;

procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;

var Handled: Boolean);

begin

if (Msg.message = wm_rbuttondown) or (Msg.message = wm_rbuttonup) or

    (msg.message = WM_RBUTTONDBLCLK)   then

begin

    if IsChild(Webbrowser1.Handle, Msg.hwnd) then

      Handled := true;

end;

end;

end.

文档

Delphi_中WebBrowser控件详解实例[1]

Delphi中WebBrowser控件详解实例2008-10-18下午06:58很久都没有原创了,前几天帮朋友做了个网址发布程序,主要应用到了WebBrowser控件。今天主要给大家演示一下过程,让大家学习一下Delphi工具。WebBrowser功能:1。自动加载网页2。去除WebBrowser滚动条3。WebBrowser自身打开页面4。禁止右键1。首先,新建一个FROM窗体:2。加入一个WEBBROWSER控件3。调整后如下:4.这样一个webbrowser就完成了,下一步我们来让程序打
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top