help(50分)

  • 主题发起人 主题发起人 徐舒畅
  • 开始时间 开始时间

徐舒畅

Unregistered / Unconfirmed
GUEST, unregistred user!
一个form ,9个edit, 要求是form close 是9个edit.text均为空,最简单的办法是什么;
 
都close了还有必要清空edit?
 
实在要做,如果是控件数组也很简单
var
edits: array[1..9] of tedit;
i: integer;
begin
for i:=1 to 9 do edits:='';
end;

 
一个个赋值
 
同意 wjiachun:窗口都关了,清空何用?
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
var
I: Integer;
begin
for I := 0 to ComponentCount - 1 do
if (Components is TEdit) then TEdit(Components).Text := '';
end;
 
笑, ^_^.
 
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
var
I: Integer;
begin
for I := 0 to ComponentCount - 1 do
if (Components is TEdit) then
if TEdit(Components).Text <> '' then
begin
Action:=False;
Exit;
end;
end;
 
他的意思大概是当9个Edit均为空时,Form关闭:
响应所有Edit的OnChange事件。以Edit1为例:
procedure TForm1.Edit1Change(Sender: TObject);
var
I,K: Integer;
begin
K:=0;
for I := 0 to ComponentCount - 1 do
if (Components is TEdit) then
if TEdit(Components).Text = '' then K:=K+1;
Label1.caption:=inttoStr(K);
if K=9 then
begin
Close;
Release;
end;
end;
 
好象这个意思:
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
var s:string;
begin
s:=Edit1.Text+Edi2.Text+......+Edit9.Text;
if s='' then Action:=caNone;
end;


 
时间太久,强制结束。 wjiachun
 
后退
顶部