utxl.pas
来自「实现短信的收发应用非常的方便,系统很小直接使用不需安装」· PAS 代码 · 共 685 行 · 第 1/2 页
PAS
685 行
toolbutton3.Enabled:=false;
toolbutton6.Enabled:=false;
toolbutton5.Enabled:=false;
toolbutton2.Enabled:=true;
toolbutton1.Enabled:=true;
end;
end;
end;
procedure Tfrmtxl.ToolButton15Click(Sender: TObject);
begin
edit3.Clear;
edit4.Clear;
edit5.Clear;
edit14.Clear;
query2.Insert;
//edit3.SetFocus;
end;
procedure Tfrmtxl.ToolButton17Click(Sender: TObject);
begin
query2.Edit;
end;
procedure Tfrmtxl.ToolButton19Click(Sender: TObject);
var
teststr,str:string;
begin
if application.MessageBox('是否要删除?','::提示::',mb_yesno)=id_yes then
begin
if ((trim(edit3.text)='') or (trim(edit4.text)='')) then
begin
application.MessageBox('请指明删除的对象','::提示::',mb_ok);
exit;
end;
teststr:='';
teststr:='select * from txl where (1=1)';
str:='';
str:=' and ((fzid = '''+trim(edit3.text)+''' ) and (txlid = '''+trim(edit4.text)+''')) ';
teststr:=teststr+str;
runsql(qtest2,teststr);
if qtest2.RecordCount <=0 then
begin
application.MessageBox('没有找到您要删除的对象','::提示::',mb_ok);
exit;
end;
qtest2.Close;
qtest2.SQL.Clear;
qtest2.SQL.Text:='delete from txl where fzid = '''+trim(edit3.text)+''' and txlid = '''+trim(edit4.text)+'''';
qtest2.ExecSQL;
////在做删除操作后开始刷新数据集////
runsql(query2,'select txl.*,fz.fzname as fzname from txl,fz where txl.fzid=fz.fzid') ;
end
else
begin
exit;
end;
end;
procedure Tfrmtxl.ToolButton23Click(Sender: TObject);
begin
query2.Cancel;
end;
procedure Tfrmtxl.ToolButton25Click(Sender: TObject);
begin
close;
end;
procedure Tfrmtxl.ToolButton21Click(Sender: TObject);
var
str,teststr:string;
begin
//检验输入的编号和名称是否为空//
if length(trim(edit6.text))<>11 then
begin
application.MessageBox('手机号不正确!','::提示::',mb_ok);
exit;
end;
if ((trim(edit3.text)='') or (trim(edit4.Text) ='') or (trim(edit5.Text) ='')or(trim(edit6.Text) ='')) then
begin
application.MessageBox('输入信息不完整!','::提示::',mb_ok);
exit;
end;
//结束检验//
//:首先检测在数据库中是否有相同分组编号和通讯记录编号,如有则退出程序://
if (Query2.State in [dsinsert]) then
begin
teststr:='';
teststr:='select * from txl where (1=1)';
str:='';
str:=' and ((fzid = '''+trim(edit3.text)+''' ) and (txlid = '''+trim(edit4.text)+''')) ';
teststr:=teststr+str;
runsql(qtest2,teststr);
if qtest2.RecordCount >0 then
begin
application.MessageBox('数据库中已存在您增加的对象!','::提示::',mb_ok);
exit;
end;
end;
//:检测结束://
try
if (Query2.Modified) or (Query2.State in [dsinsert,dsEdit]) then
begin
query2.fieldbyname('fzid').asstring :=trim(edit3.text);
query2.fieldbyname('txlid').asstring :=trim(edit4.text);
query2.fieldbyname('name').asstring :=trim(edit5.text);
query2.fieldbyname('telsj').asstring :=trim(edit6.text);
query2.fieldbyname('telsr').asstring :=trim(edit7.text);
query2.fieldbyname('email').asstring :=trim(edit8.text);
query2.fieldbyname('qz').asstring :=trim(edit9.text);
query2.fieldbyname('telgs').asstring :=trim(edit10.text);
query2.fieldbyname('gsname').asstring:=trim(edit11.text);
query2.fieldbyname('ssbm').asstring :=trim(edit12.text);
query2.fieldbyname('xxdz').asstring :=trim(edit13.text);
query2.fieldbyname('sex').asstring :=trim(ComboBox1.Text);
Query2.Post;
end;
except
application.MessageBox('数据保存失败!','::提示::',mb_ok);
Query2.Cancel;
end;
//保存后的刷新数据集//
runsql(query2,'select txl.*,fz.fzname as fzname from txl,fz where txl.fzid=fz.fzid');
end;
procedure Tfrmtxl.Query2AfterPost(DataSet: TDataSet);
begin
//query2.RequestLive:=true;
runsql(query2,'select txl.*,fz.fzname as fzname from txl,fz where txl.fzid=fz.fzid');
end;
procedure Tfrmtxl.Query2AfterScroll(DataSet: TDataSet);
begin
edit3.text:=query2.fieldbyname('fzid').asstring ;
edit4.text:=query2.fieldbyname('txlid').asstring ;
edit5.text:=query2.fieldbyname('name').asstring ;
edit6.text:=query2.fieldbyname('telsj').asstring ;
edit7.text:=query2.fieldbyname('telsr').asstring ;
edit8.text:=query2.fieldbyname('email').asstring ;
edit9.text:=query2.fieldbyname('qz').asstring ;
edit10.text:=query2.fieldbyname('telgs').asstring ;
edit11.text:=query2.fieldbyname('gsname').asstring;
edit12.text:=query2.fieldbyname('ssbm').asstring ;
edit13.text:=query2.fieldbyname('xxdz').asstring ;
ComboBox1.Text:=query2.fieldbyname('sex').asstring;
end;
procedure Tfrmtxl.DataSource2StateChange(Sender: TObject);
begin
Case DataSource2.State of
dsInactive:
begin
toolbutton15.Enabled:=false;
toolbutton19.Enabled:=false;
toolbutton17.Enabled:=false;
toolbutton23.Enabled:=false;
toolbutton21.Enabled:=false;
end;
dsBrowse:
begin
toolbutton15.Enabled:=true;
toolbutton19.Enabled:=true;
toolbutton17.Enabled:=true;
toolbutton23.Enabled:=false;
toolbutton21.Enabled:=false;
end;
dsEdit:
begin
toolbutton15.Enabled:=false;
toolbutton19.Enabled:=false;
toolbutton17.Enabled:=false;
toolbutton23.Enabled:=true;
toolbutton21.Enabled:=true;
end;
dsInsert:
begin
toolbutton15.Enabled:=false;
toolbutton19.Enabled:=false;
toolbutton17.Enabled:=false;
toolbutton23.Enabled:=true;
toolbutton21.Enabled:=true;
end;
end;
end;
procedure Tfrmtxl.SpeedButton1Click(Sender: TObject);
var
i,ttxlid:integer;
lastid:string;
begin
try
Browseform:=TBrowseform.Create(self);
runsql(Browseform.Query1,'select fzid as 分组编号,fzname as 分组名称 '+
' from fz');
for i:=0 to Browseform.Query1.FieldCount-1 do
begin
Browseform.DBGrid1.Columns.Add.FieldName:=Browseform.Query1.Fields[i].FieldName;
Browseform.DBGrid1.Columns[i].Width:=90;
end;
Browseform.ShowModal;
Edit3.Text:=trim(browseform.Query1.fieldbyname('分组编号').AsString);
//在这里开始通讯录的id号的计算并赋给edit4
runsql(qtxlidadd,'select * from txl,fz where txl.fzid='''+trim(edit3.text)+'''');
if qtxlidadd.RecordCount<1 then
begin
ttxlid:=0;
end
else
begin
//开始分析allisdb是什么数据库
if allisdb='access' then
runsql(qtxlidadd,'select max(right(trim(txlid),4)) as maxtxlid from txl,fz where txl.fzid='''+trim(edit3.text)+'''');
if allisdb='sqlserver' then
runsql(qtxlidadd,'select max(str(right(rtrim(txlid),4),5,0)) as maxtxlid from txl,fz where txl.fzid='''+trim(edit3.text)+'''');
//结束分析allisdb是什么数据库
ttxlid:=qtxlidadd.fieldbyname('maxtxlid').AsInteger;
end;
ttxlid:=ttxlid+1;
if ttxlid>9999 then
begin
browseform.Free;
application.MessageBox('通讯录已超过9999条记录请处理后再增加!',':提示:',mb_ok);
edit3.Clear;
exit;
end;
case length(inttostr(ttxlid)) of
1:lastid:=trim(edit3.text)+'000'+inttostr(ttxlid);
2:lastid:=trim(edit3.text)+'00'+inttostr(ttxlid);
3:lastid:=trim(edit3.text)+'0'+inttostr(ttxlid);
4:lastid:=trim(edit3.text)+inttostr(ttxlid);
end;
edit4.Text:=lastid;
edit5.SetFocus;
//结束ID赋值
finally
Browseform.Free;
end;
end;
procedure Tfrmtxl.Shape1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if button=mbleft then
begin
releasecapture;
perform(wm_syscommand,$f012,0);
end;
end;
procedure Tfrmtxl.Edit3KeyPress(Sender: TObject; var Key: Char);
var
seecode:string;
begin
//将代码变为名称
if key = #13 then
begin
if trim(edit3.text)<>'' then
begin
seecode:='select fzname from fz where fzid = '''+trim(edit3.text)+''' ';
ExecMysql(query3,seecode);
if query3.RecordCount >0 then
begin
edit14.BringToFront;
edit14.Text:=query3.FieldByName('fzname').AsString;
end
else
begin
edit14.Text:='';
application.messagebox('在分组信息表中没有此记录!','提示', mb_ok+MB_iconwarning);
end;
end;
end;
//结束代码变为名称
end;
procedure Tfrmtxl.Edit3Change(Sender: TObject);
var
seecode:string;
begin
if trim(edit3.text)<>'' then
begin
seecode:='select fzname from fz where fzid = '''+trim(edit3.text)+''' ';
ExecMysql(query3,seecode);
if query3.RecordCount >0 then
begin
edit14.BringToFront;
edit14.Text:=query3.FieldByName('fzname').AsString;
end
else
begin
edit14.Text:='';
application.messagebox('在分组信息表中没有此记录!','提示', mb_ok+MB_iconwarning);
end;
end;
end;
procedure Tfrmtxl.Edit6KeyPress(Sender: TObject; var Key: Char);
begin
if not(key in ['0'..'9','-']) then
begin
key:=#0;
application.MessageBox(pchar('这一栏只能输入手机!'),'提示',MB_ok+MB_iconwarning);
exit;
end;
end;
procedure Tfrmtxl.Edit7KeyPress(Sender: TObject; var Key: Char);
begin
if not(key in ['0'..'9','-']) then
begin
key:=#0;
application.MessageBox(pchar('这一栏只能输入电话号码!'),'提示',MB_ok+MB_iconwarning);
exit;
end;
end;
procedure Tfrmtxl.Edit10KeyPress(Sender: TObject; var Key: Char);
begin
if not(key in ['0'..'9','-']) then
begin
key:=#0;
application.MessageBox(pchar('这一栏只能输入电话号码!'),'提示',MB_ok+MB_iconwarning);
exit;
end;
end;
procedure Tfrmtxl.Edit9KeyPress(Sender: TObject; var Key: Char);
begin
if not(key in ['0'..'9','-']) then
begin
key:=#0;
application.MessageBox(pchar('这一栏只能输入传真号码!'),'提示',MB_ok+MB_iconwarning);
exit;
end;
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?