最近想写一个操作网页的程序.
找了一段返回网页代码的代码
但是有些函数不明白什么意思..
小弟我一点英语都不懂
请大家帮我解释下.先谢谢了 procedure 这个函数是干什么用的??
找了一段返回网页代码的代码
但是有些函数不明白什么意思..
小弟我一点英语都不懂
请大家帮我解释下.先谢谢了 procedure 这个函数是干什么用的??
解决方案 »
- DELPHI中如何对ARRAY进行过滤
- dxPSdxTLLnk.dcu是什么
- delphi如何接收别的程序发过来的自定义的消息
- 关于chart中清除serise的问题,在线等
- 发现了一个界面非常漂亮而且非常实用的客户关系管理软件
- 小菜的问题:字符串操作~~
- 一个关于TActionManager和TActionToolBar的问题!
- 求答案!!!!使用ADOTable的过滤的问题,报错:‘项目在所需的名称或序数中未被发现‘
- 简单问题
- 谁来讲讲Web Server Application中三个选项ISAPI,CGI,WIN CGI三者的区别!
- fastreport乱码,高手进.重分感谢!
- 又见每日赚分贴!!!
要是有返回值就用function
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ActiveX, ComObj, OleCtrls, SHDocVw, StdCtrls;
type
TForm1 = class(TForm)
WebBrowser1: TWebBrowser;
Button1: TButton;
procedure Button1Click(Sender: TObject);
procedure WebBrowser1DocumentComplete(Sender: TObject;
const pDisp: IDispatch; var URL: OleVariant);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
//首先来实现写,因为这是最迫切的要求:
procedure SetHtml(const WebBrowser: TWebBrowser; const Html: string);
var
Stream: IStream;
hHTMLText: HGLOBAL;
psi: IPersistStreamInit;
begin
if not Assigned(WebBrowser.Document) then Exit;
hHTMLText := GlobalAlloc(GPTR, Length(Html) + 1);
if 0 = hHTMLText then RaiseLastWin32Error;
CopyMemory(Pointer(hHTMLText),
PChar(Html), Length(Html));
OleCheck(CreateStreamOnHGlobal
(hHTMLText, True, Stream));
try
OleCheck(WebBrowser.Document.
QueryInterface(IPersistStreamInit, psi));
try
OleCheck(psi.InitNew);
OleCheck(psi.Load(Stream));
finally
psi := nil;
end;
finally
Stream := nil;
end;
end;
function GetHtml(const WebBrowser: TWebBrowser): string;
const
BufSize = $10000;
var
Size: Int64;
Stream: IStream;
hHTMLText: HGLOBAL;
psi: IPersistStreamInit;
begin
if not Assigned(WebBrowser.Document) then Exit;
OleCheck(WebBrowser.Document.QueryInterface
(IPersistStreamInit, psi));
try
//OleCheck(psi.GetSizeMax(Size));
hHTMLText := GlobalAlloc(GPTR, BufSize);
if 0 = hHTMLText then RaiseLastWin32Error;
OleCheck(CreateStreamOnHGlobal(hHTMLText, True, Stream));
try
OleCheck(psi.Save(Stream, False));
Size := StrLen(PChar(hHTMLText));
SetLength(Result, Size);
CopyMemory(PChar(Result), Pointer(hHTMLText), Size);
finally
Stream := nil;
end;
finally
psi := nil;
end;
end; procedure TForm1.Button1Click(Sender: TObject);
begin
Self.WebBrowser1.Navigate('http://www.google.com');
end;
procedure TForm1.WebBrowser1DocumentComplete(Sender: TObject;
const pDisp: IDispatch; var URL: OleVariant);
begin
ShowMessage(GetHtml(Self.WebBrowser1));
end;
end.
procedure SetHtml(const WebBrowser: TWebBrowser; const Html: string);这一段的这个 procedure 是什么意思?