⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 udy.pas

📁 实现短信的收发应用非常的方便,系统很小直接使用不需安装
💻 PAS
📖 第 1 页 / 共 2 页
字号:
         begin
            toolbutton3.Enabled:=true;
            toolbutton6.Enabled:=true;
            toolbutton5.Enabled:=true;
            toolbutton2.Enabled:=false;
            toolbutton1.Enabled:=false;
         end;
  dsEdit:
         begin
            toolbutton3.Enabled:=false;
            toolbutton6.Enabled:=false;
            toolbutton5.Enabled:=false;
            toolbutton2.Enabled:=true;
            toolbutton1.Enabled:=true;
         end;
  dsInsert:
         begin
            toolbutton3.Enabled:=false;
            toolbutton6.Enabled:=false;
            toolbutton5.Enabled:=false;
            toolbutton2.Enabled:=true;
            toolbutton1.Enabled:=true;
         end;
  end;
end;

procedure Tfrmdy.ToolButton15Click(Sender: TObject);
begin
edit3.Clear;
edit4.Clear;
edit5.Clear;
edit14.Clear;
query2.Insert;
//edit3.SetFocus;
end;

procedure Tfrmdy.ToolButton17Click(Sender: TObject);
begin
query2.Edit;
end;

procedure Tfrmdy.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 dy where (1=1)';
   str:='';
   str:=' and ((dyfzid = '''+trim(edit3.text)+''' ) and (dyid = '''+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 dy where dyfzid = '''+trim(edit3.text)+'''  and dyid = '''+trim(edit4.text)+'''';
   qtest2.ExecSQL;
   ////在做删除操作后开始刷新数据集////
   runsql(query2,'select dy.*,dyfz.dyfzname as dyfzname from dy,dyfz where dy.dyfzid=dyfz.dyfzid') ;
   end
   else
   begin
   exit;
   end;
end;

procedure Tfrmdy.ToolButton23Click(Sender: TObject);
begin
query2.Cancel;
end;

procedure Tfrmdy.ToolButton25Click(Sender: TObject);
begin
close;
end;

procedure Tfrmdy.ToolButton21Click(Sender: TObject);
var
  str,teststr:string;
begin
//检验输入的编号和名称是否为空//
if length(trim(edit5.text))>50 then
begin
application.MessageBox('短语信息太长!','::提示::',mb_ok);
exit;
end;

if ((trim(edit3.text)='') or (trim(edit4.Text) ='') or (trim(edit5.Text) ='')) then
begin
application.MessageBox('输入信息不完整!','::提示::',mb_ok);
exit;
end;
//结束检验//
//:首先检测在数据库中是否有相同分组编号和通讯记录编号,如有则退出程序://
   if (Query2.State in [dsinsert]) then
   begin
   teststr:='';
   teststr:='select * from dy where (1=1)';
   str:='';
   str:=' and ((dyfzid = '''+trim(edit3.text)+''' ) and (dyid = '''+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('dyfzid').asstring  :=trim(edit3.text);
      query2.fieldbyname('dyid').asstring :=trim(edit4.text);
      query2.fieldbyname('dyinfo').asstring  :=trim(edit5.text);
      Query2.Post;
     end;
  except
    application.MessageBox('数据保存失败!','::提示::',mb_ok);
    Query2.Cancel;
  end;
  //保存后的刷新数据集//
  runsql(query2,'select dy.*,dyfz.dyfzname as dyfzname from dy,dyfz where dy.dyfzid=dyfz.dyfzid');
end;

procedure Tfrmdy.Query2AfterPost(DataSet: TDataSet);
begin
//query2.RequestLive:=true;
runsql(query2,'select dy.*,dyfz.dyfzname as dyfzname from dy,dyfz where dy.dyfzid=dyfz.dyfzid');
end;

procedure Tfrmdy.Query2AfterScroll(DataSet: TDataSet);
begin
edit3.text:=query2.fieldbyname('dyfzid').asstring  ;
edit4.text:=query2.fieldbyname('dyid').asstring ;
edit5.text:=query2.fieldbyname('dyinfo').asstring  ;
end;

procedure Tfrmdy.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 Tfrmdy.SpeedButton1Click(Sender: TObject);
var
  i,ttxlid:integer;
  lastid:string;
begin
try
  Browseform:=TBrowseform.Create(self);
  runsql(Browseform.Query1,'select dyfzid as 分组编号,dyfzname as 分组名称 '+
                           ' from dyfz');
  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(qdyfzid,'select * from dy where dy.dyfzid='''+trim(edit3.text)+'''');
     if qdyfzid.RecordCount<1 then
     begin
     ttxlid:=0;
     end
     else
     begin
     //开始分析allisdb
     if allisdb='access' then
     runsql(qdyfzid,'select max(right(trim(dyid),4)) as maxtxlid from dy where dy.dyfzid='''+trim(edit3.text)+'''');
     if allisdb='sqlserver' then
     runsql(qdyfzid,'select max(str(right(rtrim(dyid),4),5,0)) as maxtxlid from dy where dy.dyfzid='''+trim(edit3.text)+'''');
     //结束分析allisdb
     ttxlid:=qdyfzid.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;
  ////

  {Edit3.Text:=browseform.Query1.fieldbyname('分组编号').AsString;}
  finally
  Browseform.Free;
  end;
end;


procedure Tfrmdy.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 Tfrmdy.Edit3KeyPress(Sender: TObject; var Key: Char);
var
seecode:string;
begin
//将代码变为名称
  if key = #13  then
  begin
  if edit3.text<>'' then
                     begin
                     seecode:='select dyfzname from dyfz where dyfzid = '''+trim(edit3.text)+''' ';
                     ExecMysql(query3,seecode);
                     if query3.RecordCount >0 then
                     begin
                     edit14.BringToFront;
                     edit14.Text:=query3.FieldByName('dyfzname').AsString;
                     end
                     else
                     begin
                     edit14.Text:='';
                     application.messagebox('在分组信息表中没有此记录!','提示', mb_ok+MB_iconwarning);
                     end;
                     end;
  end;
  //结束代码变为名称
end;

procedure Tfrmdy.Edit3Change(Sender: TObject);
var
 seecode:string;
begin
 if trim(edit3.text)<>'' then
                     begin
                     seecode:='select dyfzname from dyfz where dyfzid = '''+trim(edit3.text)+''' ';
                     ExecMysql(query3,seecode);
                     if query3.RecordCount >0 then
                     begin
                     edit14.BringToFront;
                     edit14.Text:=query3.FieldByName('dyfzname').AsString;
                     end
                     else
                     begin
                     edit14.Text:='';
                     application.messagebox('在分组信息表中没有此记录!','提示', mb_ok+MB_iconwarning);
                     end;
                     end;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -