//制片大人看招
function IsInteger(mStr: string): Boolean;
var
I: Integer;
begin
Result := TryStrToInt(mStr, I);
end; { IsNumber }
function IsDate(mStr: string): Boolean;
var
Date: TDateTime;
begin
Result := TryStrToDate(mStr, Date);
end; { IsDate }
procedure TForm1.Button1Click(Sender: TObject);
var
I: Integer;
begin
for I := 0 to ControlCount - 1 do
if Controls[I] is TEdit then
case TEdit(Controls[I]).Tag of
1: //数字
if not IsInteger(TEdit(Controls[I]).Text){ 不合法 } then begin
{ 提示用户 }
TEdit(Controls[I]).SetFocus;
ShowMessage('无效整数');
Break;
end;
2: //日期
if not IsDate(TEdit(Controls[I]).Text){ 不合法 } then begin
{ 提示用户 }
TEdit(Controls[I]).SetFocus;
ShowMessage('无效日期');
Break;
end;
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
with TEdit.Create(Self) do begin
Parent := Self;
Left := 100;
Top := 10;
Tag := 1;
end;
with TEdit.Create(Self) do begin
Parent := Self;
Left := 100;
Top := 40;
Tag := 2;
end;
end;
//制片大人看招
function IsNumber(mStr: string): Boolean;
var
I: Real;
E: Integer;
begin
Val(mStr, I, E);
Result := E = 0;
end; { IsNumber }
procedure TForm1.Button1Click(Sender: TObject);
var
I: Integer;
begin
for I := 0 to ControlCount - 1 do
if Controls[I] is TEdit then
if not IsNumber(TEdit(Controls[I]).Text){ 不合法 } then begin
{ 提示用户 }
TEdit(Controls[I]).SetFocus;
Break;
end;
end;