M
myjane
Unregistered / Unconfirmed
GUEST, unregistred user!
edit1:= Tedit.Create(nil); 要调用onChange中的事件如何写?
是写在一个函数中的。
可能是我写的不清楚。
常规下:双击onchange就可以加入要处理的代码。如下:
procedure TForm1.Edit1Change(Sender: TObject);
begin
.
showmessage('执行Change中的代码');
.
.
end;
但是,动态定义的edit1,如何加入事件代码呢?
----------------------------------------------------------------
这是一个公用函数,把代码贴在这:
----------------------------------------------------------------
unit publicfun;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,
Dialogs, StdCtrls,IdSMTP,IdMessage;
//发SMTP邮件
function SmtpSendMail(FromAddress,FromName, ToAddress, ASubject, MsgBody, fujian: string): Boolean;
implementation
function SmtpSendMail(FromAddress, FromName, ToAddress, ASubject, MsgBody,fujian: string):Boolean;
var
IdSMTP: TIdSMTP;
IdSendMsg: TIdMessage;
var_sHost,var_sUser,var_sPass:string;
begin
var_sHost:='smtp.263.net"
var_suser:='abcd';
var_spass:='abcd';
IdSMTP := TIdSMTP.Create(nil);
IdSendMsg := TIdMessage.Create(IdSMTP);
try
Result := False;
with IdSendMsg do
begin
From.Address:=FromAddress;//发件人地址
From.Name:=FromName;//发件人姓名
Recipients.EMailAddresses:=ToAddress; //收件人地址
Subject:= ASubject;//主题
Body.Add(MsgBody);//正文
if trim(fujian)='' then//是否有附件
else
Tidattachment.Create(IdSendMsg.MessageParts,fujian);//附件
end;
with idsmtp do
begin
Host:=var_sHost;
Username:=var_suser;
Password:=var_spass;
AuthenticationType:=atlogin;
Connect;
Send(IdSendMsg);
end;
{***************************************************************}
{* 我是想在这里加入OnWorkEnd事件,如何写吗? *}
{* 事件中的代码又写在哪里呢? *}
{* idsmtp.Disconnect; *}
{***************************************************************}
finally
IdSendMsg.Free;
IdSMTP.Free;
end;
end;
end.[/red][/b]
是写在一个函数中的。
可能是我写的不清楚。
常规下:双击onchange就可以加入要处理的代码。如下:
procedure TForm1.Edit1Change(Sender: TObject);
begin
.
showmessage('执行Change中的代码');
.
.
end;
但是,动态定义的edit1,如何加入事件代码呢?
----------------------------------------------------------------
这是一个公用函数,把代码贴在这:
----------------------------------------------------------------
unit publicfun;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,
Dialogs, StdCtrls,IdSMTP,IdMessage;
//发SMTP邮件
function SmtpSendMail(FromAddress,FromName, ToAddress, ASubject, MsgBody, fujian: string): Boolean;
implementation
function SmtpSendMail(FromAddress, FromName, ToAddress, ASubject, MsgBody,fujian: string):Boolean;
var
IdSMTP: TIdSMTP;
IdSendMsg: TIdMessage;
var_sHost,var_sUser,var_sPass:string;
begin
var_sHost:='smtp.263.net"
var_suser:='abcd';
var_spass:='abcd';
IdSMTP := TIdSMTP.Create(nil);
IdSendMsg := TIdMessage.Create(IdSMTP);
try
Result := False;
with IdSendMsg do
begin
From.Address:=FromAddress;//发件人地址
From.Name:=FromName;//发件人姓名
Recipients.EMailAddresses:=ToAddress; //收件人地址
Subject:= ASubject;//主题
Body.Add(MsgBody);//正文
if trim(fujian)='' then//是否有附件
else
Tidattachment.Create(IdSendMsg.MessageParts,fujian);//附件
end;
with idsmtp do
begin
Host:=var_sHost;
Username:=var_suser;
Password:=var_spass;
AuthenticationType:=atlogin;
Connect;
Send(IdSendMsg);
end;
{***************************************************************}
{* 我是想在这里加入OnWorkEnd事件,如何写吗? *}
{* 事件中的代码又写在哪里呢? *}
{* idsmtp.Disconnect; *}
{***************************************************************}
finally
IdSendMsg.Free;
IdSMTP.Free;
end;
end;
end.[/red][/b]