还有预定义:unit Strfunc;interface function isMoney(s:string):boolean; //ÅжÏs¿É·ñת»¯Îª»õ±ÒÀàÐÍ function isTelephone(s:string):boolean;//ÅжÏs¿É·ñΪºÏ·¨µÄµç»°ºÅÂë implementation uses AdminMainFM; {ÅжÏs¿É·ñת»¯Îª»õ±ÒÀàÐÍ} function TAdminMainForm.isMoney(s:string):boolean; var i:integer; begin i:=1; if length(s)=0 then begin result:=false; exit; end; while i<=length(s) do begin if(isMoney(s[i])=false)and(s[i]<>'.') then begin result:=false; exit; end; i:=i+1; end; result:=true; end; {ÅжÏs¿É·ñΪºÏ·¨µÄµç»°ºÅÂë } function TAdminMainForm.isTelephone(s:string):boolean; var i:integer; begin if length(s)=0 then begin result:=true; exit; end; i:=1; while i<=length(s) do begin if isTelephone(s[i])=false then begin result:=false; exit; end; i:=i+1; end; end; end.
Abort不需要定义,那么在那里申明?
下面是这个窗口的全代码(有些中文字乱麻了)unit AdminMainFM;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, jpeg, ExtCtrls, ComCtrls, StdCtrls, DB, ADODB, Grids, DBGrids,
DBCtrls, Mask, Buttons,strfunc;type
TAdminMainForm = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
TabSheet3: TTabSheet;
TabSheet4: TTabSheet;
Panel1: TPanel;
Label1: TLabel;
Button1: TButton;
DBGrid1: TDBGrid;
Label2: TLabel;
Button2: TButton;
ADOQuery1: TADOQuery;
ADOTable1: TADOTable;
DataSource1: TDataSource;
Panel2: TPanel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
ADOTable2: TADOTable;
DataSource2: TDataSource;
DBGrid3: TDBGrid;
Label13: TLabel;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
Label17: TLabel;
Label18: TLabel;
Label19: TLabel;
Label20: TLabel;
Label21: TLabel;
DBEdit10: TDBEdit;
DBEdit11: TDBEdit;
DBEdit12: TDBEdit;
DBEdit13: TDBEdit;
DBEdit14: TDBEdit;
DBComboBox1: TDBComboBox;
DBEdit15: TDBEdit;
DBNavigator2: TDBNavigator;
BitBtn1: TBitBtn;
Edit1: TEdit;
ComboBox1: TComboBox;
DateTimePicker1: TDateTimePicker;
DateTimePicker2: TDateTimePicker;
Button3: TButton;
Button4: TButton;
DBGrid2: TDBGrid;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Memo1: TMemo;
procedure Button1Click(Sender: TObject);
procedure DBEdit15KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure DBComboBox1Change(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
AdminMainForm: TAdminMainForm;implementation
uses WelcomeFM,AdminLandFM,ExitFM;
{$R *.dfm}procedure TAdminMainForm.Button1Click(Sender: TObject);
begin
ExitForm:=TExitForm.Create(self);
ExitForm.Showmodal;
ExitForm.free;//ÏÔʾÍ˳öµÇ½´°Ìå
end;procedure TAdminMainForm.DBEdit15KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
dbedit15.Text:=floattostr(strtofloat(dbedit13.Text)-strtofloat(dbedit14.Text)-strtofloat(dbcombobox1.Text));
end;procedure TAdminMainForm.DBComboBox1Change(Sender: TObject);
begin
dbedit15.Text:=floattostr(strtofloat(dbedit13.Text)-strtofloat(dbedit14.Text)-strtofloat(dbcombobox1.Text));
end;procedure TAdminMainForm.Button2Click(Sender: TObject);
var
sql:string;
begin
sql:='select*from UserData where Óû§ºÅÂë like'+''+edit1.text+''+';';
//SQL²éѯÓï¾ä£º¸ù¾ÝÓû§ºÅÂë²éѯÓû§ÐÅÏ¢
adoquery1.SQL.Clear;
adoquery1.SQL.Add(sql);
adoquery1.ExecSQL;
adoquery1.Active:=true;
end;procedure TAdminMainForm.FormShow(Sender: TObject);
begin
AdminLandForm.Close;
WelcomeForm.Visible:=false;
end;procedure TAdminMainForm.BitBtn1Click(Sender: TObject);
begin
adoquery1.Close;
adoquery1.Open;
adoquery1.ExecSQL;
adoquery1.Active:=true;
end;procedure TAdminMainForm.Button4Click(Sender: TObject);
var
tmp:integer;
begin
with ADOTable1 do
activeControl:=Edit2;
Edit2.Text:='';
Edit3.Text:='';
DataTimePicker1.Data:=now;
DataTimePicker2.Data:=now;
ComboBox1.ItemIndex:=0;
Edit4.Text:='';
Edit5.Text:='';
Edit6.Text:='';
Memo1.Text:='';
end;procedure TAdminMainForm.Button3Click(Sender: TObject);
begin
var
tmp:integer;
begin
try
{¼ì²éÓû§ºÅÂë}
if(Edit2.Text='')or(length(Edit2.Text)>8)then
begin
messageDlg('"Óû§ºÅÂë"ÊäÈë´íÎó£¬ÇëÖØÐÂÊäÈë!',mtWarning,[mbok],0);
activeControl:=Edit2;
abort;
end;
{¼ì²éÓû§ÐÕÃû}
if(Edit3.Text='')or(length(Edit3.Text)>8)then
begin
messageDlg('"Óû§ÐÕÃû"ÊäÈë´íÎó£¬ÇëÖØÐÂÊäÈë!',mtWarning,[mbok],0);
activeControl:=Edit3;
abort;
end;
{¼ì²é¿ª»§Ê±¼äÓëÉúÈÕ}
if DataTimePicker1.Data>DataTimePicker2.Data then
begin
messageDlg('"¿ª»§Ê±¼ä"»ò"ÉúÈÕ"ÊäÈë´íÎó£¬ÇëÖØÐÂÊäÈë!',mtWarning,[mbok],0);
activeControl:=DataTimePicker1;
abort;
end;
{¼ì²éÓû§µØÖ·}
if(Edit4.Text='')or(length(Edit4.Text)>20)then
begin
messageDlg('"Óû§µØÖ·"ÊäÈë´íÎó£¬ÇëÖØÐÂÊäÈë!',mtWarning,[mbok],0);
activeControl:=Edit4;
abort;
end;
{¼ì²éÓÊÕþ±àÂë}
if(Edit5.Text='')or(length(Edit5.Text)>6)then
begin
messageDlg('"ÓÊÕþ±àÂë"ÊäÈë´íÎó£¬ÇëÖØÐÂÊäÈë!',mtWarning,[mbok],0);
activeControl:=Edit5;
abort;
end;
{¼ì²éÁªÏµµç»°}
if(Edit6.Text='')or(length(Edit6.Text)>6)or(isTelephone(Edit6.Text)=false)then
begin
messageDlg('"ÁªÏµµç»°"ÊäÈë´íÎó£¬ÇëÖØÐÂÊäÈë!',mtWarning,[mbok],0);
activeControl:=Edit6;
abort;
end;
{¼ì²é±¸×¢}
if length(Memo1.Text)>60 then
begin
messageDlg('"±¸×¢"ÊäÈë¹ý³¤£¬ÇëÖØÐÂÊäÈë!',mtWarning,[mbok],0);
activeControl:=Memo1;
abort;
end;
end;end.
function isMoney(s:string):boolean; //ÅжÏs¿É·ñת»¯Îª»õ±ÒÀàÐÍ
function isTelephone(s:string):boolean;//ÅжÏs¿É·ñΪºÏ·¨µÄµç»°ºÅÂë
implementation
uses AdminMainFM;
{ÅжÏs¿É·ñת»¯Îª»õ±ÒÀàÐÍ}
function TAdminMainForm.isMoney(s:string):boolean;
var
i:integer;
begin
i:=1;
if length(s)=0 then
begin
result:=false;
exit;
end;
while i<=length(s) do
begin
if(isMoney(s[i])=false)and(s[i]<>'.') then
begin
result:=false;
exit;
end;
i:=i+1;
end;
result:=true;
end;
{ÅжÏs¿É·ñΪºÏ·¨µÄµç»°ºÅÂë }
function TAdminMainForm.isTelephone(s:string):boolean;
var
i:integer;
begin
if length(s)=0 then
begin
result:=true;
exit;
end;
i:=1;
while i<=length(s) do
begin
if isTelephone(s[i])=false then
begin
result:=false;
exit;
end;
i:=i+1;
end;
end;
end.
是DateTimePicker
非DataTimePicker
真是一字之差呀!
var
tmp:integer;
begin
with ADOTable1 do////看这里 do后面的begin end 呢
activeControl:=Edit2;
Edit2.Text:='';
Edit3.Text:='';
DataTimePicker1.Data:=now;
DataTimePicker2.Data:=now;
ComboBox1.ItemIndex:=0;
Edit4.Text:='';
Edit5.Text:='';
Edit6.Text:='';
Memo1.Text:='';
end;
var
tmp:integer;
begin
with ADOTable1 do
直接把这行删掉就行了