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

📄 ug_dc.pas

📁 阳光餐饮收银管理系统源码
💻 PAS
字号:
unit ug_dc;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Grids, DBGrids, StdCtrls,u_main, Db, DBTables;

type
  Tg_dc = class(TForm)
    cx: TEdit;
    Label3: TLabel;
    DBGrid1: TDBGrid;
    q_dc: TQuery;
    q_dcclh: TStringField;
    q_dcCH: TStringField;
    q_dcMc: TStringField;
    q_dcdj: TFloatField;
    q_dcgg: TStringField;
    q_dclbh: TStringField;
    q_dcdzl: TFloatField;
    dq_dc: TDataSource;
    procedure cxChange(Sender: TObject);
    procedure FormKeyPress(Sender: TObject; var Key: Char);
    procedure DBGrid1KeyPress(Sender: TObject; var Key: Char);
    procedure cxKeyPress(Sender: TObject; var Key: Char);
    procedure FormShow(Sender: TObject);
    procedure cxKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure DBGrid1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure cxEnter(Sender: TObject);
    procedure DBGrid1DblClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  g_dc: Tg_dc;

implementation

{$R *.DFM}

procedure Tg_dc.cxChange(Sender: TObject);
begin
 if length(trim(cx.text))=1 then
  try
   strtoint(copy(cx.text,1,1));
   i_key:=48;
  except
   i_key:=65;
  end;
 with q_dc do
  begin
    DisableControls;
    sql.Clear;
    if i_key=48 then
       begin
         sql.add('SELECT clh,ch,Mc,dj,gg,lbh,dzl FROM cy where ch like :s_ch');
         ParamByName('s_ch').asstring:=trim(cx.text)+'%';
       end;
    if i_key=65 then
       begin
         sql.add('SELECT clh,ch,Mc,dj,gg,lbh,dzl FROM cy where zjm like :s_zjm');
         ParamByName('s_zjm').asstring:=trim(cx.text)+'%';
       end;
    active:=false;
    active:=true;
    EnableControls;
  end;
 if (length(trim(cx.text))=4) and (q_dc.RecordCount<>0) then
  begin
   esc_enter:=1;
   close;
  end;
end;

procedure Tg_dc.FormKeyPress(Sender: TObject; var Key: Char);
begin
  if key=#27 then
    begin
      esc_enter:=0;
      close;
    end;
end;

procedure Tg_dc.DBGrid1KeyPress(Sender: TObject; var Key: Char);
begin
 if (key=#13) and (q_dc.recordcount<>0) then
   begin
    esc_enter:=1;
    close;
   end;
end;

procedure Tg_dc.cxKeyPress(Sender: TObject; var Key: Char);
begin
if (key=#13) and (q_dc.recordcount<>0) then
 begin
  esc_enter:=1;
  close;
 end;
end;

procedure Tg_dc.FormShow(Sender: TObject);
begin 
 ActiveControl:=cx;
 cx.text:=c_key;
 cx.SelStart:=2; 
end;

procedure Tg_dc.cxKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if (key=38) or (key=40) or (key=33) or (key=34) then DBGrid1.setfocus;
end;

procedure Tg_dc.DBGrid1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if ((key>=48) and (key<=57)) or ((key>=65) and (key<=90)) or ((key>=96) and (key<=105)) then
   begin
     c_key:=chr(key);
     cx.text:=cx.text+c_key;
     cx.setfocus;
   end;  
end;

procedure Tg_dc.cxEnter(Sender: TObject);
begin
  cx.SelStart:=length(cx.text)+1; 
end;

procedure Tg_dc.DBGrid1DblClick(Sender: TObject);
begin
 if q_dc.recordcount=0 then exit;
 esc_enter:=1;
 close;
end;

end.

⌨️ 快捷键说明

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