am_jygl_cxs.~pas
上传用户:szruida
上传日期:2007-06-01
资源大小:6518k
文件大小:6k
源码类别:

Delphi控件源码

开发平台:

Delphi

  1. unit am_jygl_cxs;
  2. interface
  3. uses
  4.   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  5.   Dialogs, StdCtrls, PZXQuery, DB, DBClient, Buttons, Mask, DBCtrlsEh,
  6.   ExtCtrls, ComCtrls;
  7. type
  8.   Tam_jygl_cx = class(TForm)
  9.     Panel1: TPanel;
  10.     Label1: TLabel;
  11.     Label2: TLabel;
  12.     Label3: TLabel;
  13.     Label4: TLabel;
  14.     ComboBox1: TComboBox;
  15.     ComboBox2: TComboBox;
  16.     DBDateTimeEditEh1: TDBDateTimeEditEh;
  17.     ComboBox3: TComboBox;
  18.     Edit1: TEdit;
  19.     Edit2: TEdit;
  20.     Panel2: TPanel;
  21.     BitBtn2: TSpeedButton;
  22.     BitBtn1: TSpeedButton;
  23.     SpeedButton1: TSpeedButton;
  24.     SpeedButton2: TSpeedButton;
  25.     procedure SpeedButton2Click(Sender: TObject);
  26.     procedure BitBtn1Click(Sender: TObject);
  27.     procedure BitBtn2Click(Sender: TObject);
  28.     procedure SpeedButton1Click(Sender: TObject);
  29.     procedure ComboBox3Change(Sender: TObject);
  30.     procedure ComboBox1Change(Sender: TObject);
  31.     procedure FormCreate(Sender: TObject);
  32.     procedure ComboBox2Change(Sender: TObject);
  33.     procedure FormClose(Sender: TObject; var Action: TCloseAction);
  34.     procedure Edit1KeyPress(Sender: TObject; var Key: Char);
  35.   private
  36.     { Private declarations }
  37.   public
  38.     { Public declarations }
  39.   end;
  40. var
  41.   am_jygl_cx: Tam_jygl_cx;
  42.   str,s_zdm,s_logic,s_tj:string;//查找字符串,字段名
  43. Const ss:array [0..4] of string=('aj_xh','dz_dm','jy_jyrq','jy_jsr','jy_jyzt');
  44. implementation
  45. uses am_dz_ajxzs, DMs, am_jygls;
  46. {$R *.dfm}
  47. procedure Tam_jygl_cx.SpeedButton2Click(Sender: TObject);
  48. begin
  49.  combobox1.ItemIndex:=-1;
  50.  combobox2.ItemIndex:=-1;
  51.  edit1.Text:='';
  52.  combobox3.ItemIndex:=-1;
  53.  edit2.text:='';
  54. end;
  55. procedure Tam_jygl_cx.BitBtn1Click(Sender: TObject);
  56. var S_Edit,Hint:string;
  57. begin
  58.  S_Edit:=Edit2.Text;
  59.  if trim(Combobox1.Text)='' then
  60.    begin
  61.     application.MessageBox('字段名称不能为空','提示',mb_ok+mb_iconinformation);
  62.     exit;
  63.    end;
  64.  if trim(Combobox2.Text)='' then
  65.    begin
  66.     application.MessageBox('条件不能为空','提示',mb_ok+mb_iconinformation);
  67.     exit;
  68.    end;
  69.  //----------------------------------
  70.  if trim(Edit2.Text)='' then
  71.   begin
  72.     if Combobox2.Text='模糊查询' then
  73.      str:=s_zdm+' '+' like '+' '+''''+trim(edit1.Text)+'%'+''''
  74.     else
  75.      str:=s_zdm+' '+combobox2.Text+' '+''''+trim(edit1.Text)+'''';
  76.   end
  77.  else
  78.   begin
  79.     if Combobox2.Text='模糊查询' then
  80.        str:=s_Edit+s_zdm+' '+' like '+' '+''''+trim(edit1.Text)+'%'+''''
  81.     else if combobox1.Text='借阅日期' then
  82.        str:=s_Edit+s_zdm+' '+combobox2.Text+' '+''''+DBDateTimeEditEh1.Text+''''
  83.     else
  84.        str:=s_Edit+s_zdm+' '+combobox2.Text+' '+''''+trim(edit1.Text)+'''';
  85.   end;
  86.  //---------------------------------
  87.   dm.v_jy.Close;
  88.   dm.v_jy.CommandText:='select * from V_Jy where '+str;
  89.   dm.v_jy.Open;
  90.   if dm.v_jy.RecordCount=0 then
  91.      application.MessageBox('没有找到符合条件的纪录','提示',mb_ok+mb_iconinformation)
  92.   else
  93.    begin
  94.      Hint:='当前表中有'+IntToStr(dm.v_jy.RecordCount)+'条记录符合条件';
  95.      application.MessageBox(Pchar(hint),'提示',mb_ok+mb_iconinformation);
  96.    end;
  97. end;
  98. procedure Tam_jygl_cx.BitBtn2Click(Sender: TObject);
  99. begin
  100.  Close;
  101. end;
  102. procedure Tam_jygl_cx.SpeedButton1Click(Sender: TObject);
  103. begin
  104.  s_logic:='';
  105.  if trim(Combobox1.Text)='' then
  106.    begin
  107.     application.MessageBox('字段名称不能为空','提示',mb_ok+mb_iconinformation);
  108.     exit;
  109.    end;
  110.  if trim(Combobox2.Text)='' then
  111.    begin
  112.     application.MessageBox('条件不能为空','提示',mb_ok+mb_iconinformation);
  113.     exit;
  114.    end;
  115.    //有效性验证
  116.  case combobox3.ItemIndex of
  117.   0:  s_logic:=' and ';
  118.   1:  s_logic:=' or ';
  119.  end;
  120.  if Combobox2.Text='模糊查询' then
  121.    Edit2.Text:=Edit2.Text+s_zdm+' '+' like '+' '+''''+trim(edit1.Text)+'%'+''''+' '+s_logic+' '
  122.  else if combobox1.Text='借阅日期' then
  123.   begin
  124.    Edit2.Text:=Edit2.Text+s_zdm+' '+combobox2.Text+' '+''''+DBDateTimeEditEh1.Text+''''+' '+s_logic+' ';   end
  125.  else
  126.    Edit2.Text:=Edit2.Text+s_zdm+' '+combobox2.Text+' '+''''+trim(edit1.Text)+''''+' '+s_logic+' ';
  127.  combobox1.ItemIndex:=-1;
  128.  combobox2.ItemIndex:=-1;
  129.  edit1.Text:='';
  130.  combobox3.ItemIndex:=-1;
  131.  SpeedButton1.Enabled:=false;
  132. end;
  133. procedure Tam_jygl_cx.ComboBox3Change(Sender: TObject);
  134. begin
  135.  if trim(Combobox1.Text)='' then
  136.    begin
  137.     application.MessageBox('字段名称不能为空','提示',mb_ok+mb_iconinformation);
  138.     exit;
  139.    end;
  140.  if trim(Combobox2.Text)='' then
  141.    begin
  142.     application.MessageBox('条件不能为空','提示',mb_ok+mb_iconinformation);
  143.     exit;
  144.    end;
  145.  s_logic:='';
  146.  case combobox3.ItemIndex of
  147.   0:  s_logic:=' and ';
  148.   1:  s_logic:=' or ';
  149.  end;
  150.  SpeedButton1.Enabled:=true;
  151. end;
  152. procedure Tam_jygl_cx.ComboBox1Change(Sender: TObject);
  153. begin
  154.   s_zdm:=ss[combobox1.itemindex];//以上是获得下拉框中的值
  155.  if combobox1.Text='借阅日期' then
  156.    begin
  157.     combobox2.Clear;
  158.     combobox2.Items.Add('=');
  159.     combobox2.Items.Add('<>');
  160.     combobox2.Items.Add('<');
  161.     combobox2.Items.Add('>');
  162.     combobox2.Items.Add('>=');
  163.     combobox2.Items.Add('<=');
  164.    end
  165.   else
  166.    begin
  167.     combobox2.Clear;
  168.     combobox2.Items.Add('=');
  169.     combobox2.Items.Add('<>');
  170.     combobox2.Items.Add('模糊查询');
  171.    end;
  172. end;
  173. procedure Tam_jygl_cx.FormCreate(Sender: TObject);
  174. begin
  175.  Combobox1.Clear;
  176.  Combobox1.Items.Add('案卷序号');
  177.  Combobox1.Items.Add('读者代码');
  178.  Combobox1.Items.Add('借阅日期');
  179.  Combobox1.Items.Add('经手人');
  180.  Combobox1.Items.Add('归还状态');
  181. end;
  182. procedure Tam_jygl_cx.ComboBox2Change(Sender: TObject);
  183. begin
  184.  if combobox1.Text='借阅日期' then
  185.    begin
  186.     DBDateTimeEditEh1.Visible:=true;
  187.     edit1.Visible:=false;
  188.    end
  189.  else
  190.    begin
  191.     DBDateTimeEditEh1.Visible:=false;
  192.     edit1.Visible:=true;
  193.    end;
  194. end;
  195. procedure Tam_jygl_cx.FormClose(Sender: TObject; var Action: TCloseAction);
  196. begin
  197.  action:=cafree;
  198.  am_jygl_cx:=Nil;
  199. end;
  200. procedure Tam_jygl_cx.Edit1KeyPress(Sender: TObject; var Key: Char);
  201. begin
  202.  if combobox1.Text='案卷序号' then
  203.   begin
  204.     if not(key in ['0'..'9',#8,#13]) then
  205.      begin
  206.        key:=#0;
  207.        application.MessageBox('请输入整数','提示',mb_ok+mb_iconinformation);
  208.        exit;
  209.      end;
  210.   end;
  211. end;
  212. end.