[阅读: 967] 2005-12-01 02:25:01
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
OleCtrls, SHDocVw, MSHTML_TLB, OleServer, StdCtrls;
type
TForm1 = class(TForm)
IE: TWebBrowser;
Document: THTMLDocument;
dUserName: TEdit;
dSayHello: TButton;
UserName: THTMLInputElement;
SayHello: THTMLInputButtonElement;
procedure FormCreate(Sender: TObject);
procedure IEDocumentComplete(Sender: TObject; const pDisp: IDispatch;
var URL: OleVariant);
procedure UserNameonchange(Sender: TObject);
procedure SayHelloonclick(Sender: TObject);
procedure dUserNameChange(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.FormCreate(Sender: TObject);
begin
IE.Navigate('about:请输入您的姓名:<input id="UserName" name="UserName"><br><br><input type="submit" id="SayHello" name="SayHello" value="Say Hello">');
end;
procedure TForm1.IEDocumentComplete(Sender: TObject;
const pDisp: IDispatch; var URL: OleVariant);
begin
Document.ConnectTo(IE.Document as DispHTMLDocument);
UserName.ConnectTo(Document.getElementById('UserName') as DispHTMLInputElement);
SayHello.ConnectTo(Document.getElementById('SayHello') as DispIHTMLInputButtonElement);
end;
procedure TForm1.UserNameonchange(Sender: TObject);
begin
dUserName.Text := UserName.value;
end;
procedure TForm1.SayHelloonclick(Sender: TObject);
begin
if Trim(UserName.value) = '' then
ShowMessage('请先输入您的姓名。')
else
ShowMessage('您好, ' + UserName.value);
end;
procedure TForm1.dUserNameChange(Sender: TObject);
begin
UserName.value := dUserName.Text;
end;
end.