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

📄 newxf.pas

📁 集成酒店桑拿食管管理的完整程序
💻 PAS
📖 第 1 页 / 共 3 页
字号:
//      xfbm.Items.Delete(xflist1.row-1);
   end;
end;

procedure Txfform.djnoKeyPress(Sender: TObject; var Key: Char);
begin
 if (key>'9') or (key<'0') then key:=#0;
end;

procedure Txfform.gridKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
   grid.col:=3;
end;

procedure Txfform.zyryKeyPress(Sender: TObject; var Key: Char);
begin
   if (key=char(13)) then
     begin
        ActiveControl:=grid;
    end;

end;

procedure Txfform.zyryExit(Sender: TObject);
begin
   if (trim(zyry.Text)<>'') then
   begin
     grid.Cells[4,grid.Row]:=trim(copy(zyry.Text,5,10));
   end
   else
     grid.Cells[3,grid.Row]:='';
  zyry.text:='';
  zyry.Visible:=False;
  zyry.Enabled:=false;
  ActiveControl:=grid;


end;

procedure Txfform.hdnoDblClick(Sender: TObject);
begin
  Application.CreateForm(Tdjform, djform);
  djform.Panel1.Visible:=false;
  djform.rmnogrid.Visible:=false;
  djform.Button1.Enabled:=false;
  djform.edit2.Text:='a';
  djform.Timer1.Free;
  djform.showmodal;
  hdno.Text:=copy(trim(djform.xfrmno.Text),1,6);
  if length(trim(djform.xfrmno.Text))>6 then
  begin
    Panel3.Visible:=true;
    if trim(copy(trim(djform.xfrmno.Text),7,6))='1' then
    begin
      man.Checked:=true;
      woman.Checked:=false;
    end
    else
    begin
      man.Checked:=false;
      woman.Checked:=true;
    end;
  end
  else Panel3.Visible:=false;
  djform.Free;
  grid.SetFocus;
end;

procedure Txfform.hdnoKeyPress(Sender: TObject; var Key: Char);
begin
 key:=#0;
end;

procedure Txfform.Grid2Enter(Sender: TObject);
begin
  (ActiveControl as Tstringgrid).Color:=clWhite;
  (ActiveControl as Tstringgrid).Font.Color:=clBlue;

end;

procedure Txfform.Grid2Exit(Sender: TObject);
begin
  grid2.Color:=clBackground;
  grid2.Font.Color:=clYellow;

end;

procedure Txfform.gridMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
  if y>18 then
   grid.Hint:=grid.Cells[0,strtoint(floattostr(int(y/18)))]+'  单价:'+grid.Cells[1,strtoint(floattostr(int(y/18)))]+'元';

end;

procedure Txfform.slKeyPress(Sender: TObject; var Key: Char);
begin
   if (key=char(13))  then
     begin
        ActiveControl:=grid;
    end;

end;

procedure Txfform.gridExit(Sender: TObject);
begin
  grid.Color:=clBackground;
  grid.Font.Color:=clYellow;

end;

procedure Txfform.zklChange(Sender: TObject);
var i:integer;
  curxf:double;
begin
  i:=1;
  curxf:=0.00;
  while trim(xflist1.Cells[0,i])<>'' do
  begin
     if trim(xflist1.Cells[5,i])='True' then
       xflist1.Cells[2,i]:=floattostr((strtofloat(xflist1.Cells[1,i])*strtofloat(xflist1.Cells[3,i]))*zkl.Value/100);
     curxf:=curxf+strtofloat(trim(xflist1.Cells[2,i]));
     i:=i+1;
  end;
  edit1.text:=floattostr(curxf);

end;

procedure Txfform.gridDblClick(Sender: TObject);
begin
  if (grid.Col=3)  then
   begin
        sl.Visible:=true;
        sl.Enabled:=true;
        sl.Top:=50+(grid.row-grid.TopRow)*19;
        ActiveControl:=sl;
   end;
  if (grid.Col=4)  then
   begin
        cmbZY.Visible:=true;
        CmbZY.Enabled:=true;
        CmbZY.Top:=50+(grid.row-grid.TopRow)*19;
        ActiveControl:=cmbZY;
   end;

end;

procedure Txfform.gridClick(Sender: TObject);
begin
  {if (grid.Col=4) and (trim(grid.Cells[6,grid.row])='True') and (trim(grid.Cells[3,grid.row])<>'') then
   begin
        zyry.Visible:=true;
        zyry.Enabled:=true;
        zyry.Top:=50+(grid.row-grid.TopRow)*19;
        ActiveControl:=zyry;
   end;   }

end;

procedure Txfform.gridSetEditText(Sender: TObject; ACol, ARow: Integer;
  const Value: String);
var
  curxf:double;
  i,j:integer;
begin
  try
     //*****************************************//
     if length(trim(grid.cells[3,arow]))>0 then
     begin
        if trim(grid.Cells [5,arow])='True' then
           grid.Cells [2,arow]:=floattostr(strtofloat(grid.cells[1,arow])*strtofloat(grid.cells[3,arow])*zkl.Value/100)
        else
           grid.Cells [2,arow]:=floattostr(strtofloat(grid.cells[1,arow])*strtofloat(grid.cells[3,arow]));
        curxf:=0.00;
        i:=1;
        while trim(xflist1.Cells[0,i])<>'' do
        begin
           if trim(xflist1.Cells[0,i])=trim(grid.Cells[0,arow]) then
           begin
             delete(i,xflist1);
//             xfbm.Items.Delete(i-1);
           end
           else
           begin
              if xflist1.RowCount<=i then xflist1.RowCount:=xflist1.RowCount+1;
              curxf:=curxf+strtofloat(trim(xflist1.Cells[2,i]));
              i:=i+1;
           end;
        end;
        if  trim(grid.Cells[2,arow])<>'0' then
        begin
           for j:=0 to 10 do xflist1.Cells[j,i]:=grid.Cells[j,arow];
           curxf:=curxf+strtofloat(trim(xflist1.Cells[2,i]));
//           xfbm.Items.Add(typebm.Items[arow-1]);
        end;
        edit1.text:=floattostr(curxf);

     end
     else
        grid.Cells [2,arow]:='';

     //*****************************************//
     //*****************************************//
  except
  end;

end;

procedure Txfform.mcExit(Sender: TObject);
begin
   if trim(mc.text)='' then exit;
   getvalue(bbb,'select cuscode,cusname,unit,price,custype,iszy from cusitem where cuscode='''+trim(mc.Text)+''' or cusname='''+trim(mc.Text)+'''');
   if bbb[0]='' then
   begin
     showmessage('项目错误!');
     mc.Text:='';
     mc.SetFocus;
     exit;
   end;
   if bbb[5]='1' then
   begin
     zyry1.Enabled:=true;
     zyry1.SetFocus;
     exit;
   end;
   xfsl.Enabled:=true;
   xfsl.SetFocus;
   xfsl.Value:=1;
   mc.Text:=bbb[1];
end;

procedure Txfform.mcKeyPress(Sender: TObject; var Key: Char);
begin
  if key=#13 then mcExit(nil);
end;

procedure Txfform.xfslExit(Sender: TObject);
var i:integer;
   curxf:double;
begin
        curxf:=0.00;
        i:=1;
        while trim(xflist1.Cells[0,i])<>'' do
        begin
           if trim(xflist1.Cells[7,i])=bbb[0] then
           begin
             delete(i,xflist1);
           end
           else
           begin
              if xflist1.RowCount<=i then xflist1.RowCount:=xflist1.RowCount+1;
              curxf:=curxf+strtofloat(trim(xflist1.Cells[2,i]));
              i:=i+1;
           end;
        end;
        if  bbb[2]<>'0' then
        begin
           xflist1.Cells[0,i]:=bbb[1];
           xflist1.Cells[1,i]:=bbb[3];
           xflist1.Cells[7,i]:=bbb[0];
           xflist1.Cells[8,i]:=bbb[4];
           xflist1.Cells[3,i]:=floattostr(xfsl.Value);
           xflist1.Cells[4,i]:=zyry1.Text;
           xflist1.Cells[2,i]:=floattostr(strtofloat(bbb[3])*xfsl.Value);
           curxf:=curxf+strtofloat(trim(xflist1.Cells[2,i]));
//           xfbm.Items.Add(bbb[0]);
        end;
        edit1.text:=floattostr(curxf);
        mc.Text:='';
        zyry1.Text:='';
        mc.SetFocus;
        xfsl.Enabled:=false;
        xfsl.Value:=1;

end;

procedure Txfform.xfslKeyPress(Sender: TObject; var Key: Char);
begin
   if key=#13 then xfslExit(nil);
end;

procedure Txfform.zyry1Exit(Sender: TObject);
begin
   xfsl.Enabled:=true;
   zyry1.Enabled:=false;
   xfsl.SetFocus;
end;

procedure Txfform.zyry1KeyPress(Sender: TObject; var Key: Char);
begin
  if key=#13 then  zyry1Exit(nil);
end;

procedure Txfform.FormShow(Sender: TObject);
begin
   hdno.SetFocus;
end;

procedure Txfform.mcKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
   if bx.Checked then exit;
   if (key>=47) and (key<>45) then
   begin
     Panel7.Visible:=true;
     jc.Text:=chr(key);
     ActiveControl:=jc;
     jc.SelStart:=1;
     jcKeyUp(jc,key,shift);
   end;

end;

procedure Txfform.jcExit(Sender: TObject);
begin
  if (Panel7.Visible) and (ActiveControl<>DBGrid1) then
    jc.SetFocus;

end;

procedure Txfform.jcKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var i:integer;
begin
  if (key>=49) and (key<58) AND (shift=[ssCtrl]) then
  begin
    Query1.First;
    for i:=1 to strtoint(CHR(key))-1 do Query1.Next;
    DBGrid1DblClick(NIL);
  end;
  if (key>32) and (key<=40) then dbgrid1.SetFocus;
  if key=27 then
  begin
    Query1.Active:=false;
    Panel7.Visible:=false;
    DataSource1.DataSet:=nil;
    mc.SetFocus;
  end;

end;

procedure Txfform.jcKeyPress(Sender: TObject; var Key: Char);
begin
  key:=upcase(key);
  if key=#13 then
  begin
    if trim(jc.text)<>'' then
      DBGrid1DblClick(NIL);
{    Query1.Active:=false;
    Panel7.Visible:=false;
    DataSource1.DataSet:=nil;
    mc.SetFocus; }
  end;

end;

procedure Txfform.jcKeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var tj:string;
begin
    tj:='';
     if jc1.Checked =true then
     begin
       tj:=' where cusjc>='''+trim(jc.Text)+''' and cusjc<'''+trim(jc.Text)+chr(255)+'''';
       Label22.Caption:='项目简称';
     end
     else
     begin
       tj:=' where cuscode>='''+trim(jc.Text)+''' and cuscode<'''+trim(jc.Text)+chr(255)+'''';
       Label22.Caption:='项目编号';
     end;
     Query1.Active:=false;
     Query1.SQL.Clear;
     Query1.SQL.Add('select * from cusitem ' +tj) ;
     Query1.Prepare;
     Query1.Open;
     DataSource1.DataSet:=Query1;
     ChineseGrid(DBGrid1);
end;

procedure Txfform.DBGrid1Exit(Sender: TObject);
begin
  if (Panel7.Visible) and (ActiveControl<>jc) then
    DBGrid1.SetFocus;
end;

procedure Txfform.DBGrid1KeyPress(Sender: TObject; var Key: Char);
begin
 if key=#13 then
   DBGrid1DblClick(nil);
 if key=#27 then
     jcKeyPress(nil,key);

end;

procedure Txfform.DBGrid1DblClick(Sender: TObject);
begin
   bbb[0]:=Query1.fieldbyname('cuscode').asstring;
   bbb[1]:=Query1.fieldbyname('cusname').asstring;
   bbb[2]:=Query1.fieldbyname('unit').asstring;
   bbb[3]:=Query1.fieldbyname('price').asstring;
   bbb[4]:=Query1.fieldbyname('custype').asstring;
   bbb[5]:=Query1.fieldbyname('iszy').asstring;
   xfsl.Enabled:=true;
   xfsl.SetFocus;
   xfsl.Value:=1;
   mc.Text:=bbb[1];
    Query1.Active:=false;
    Panel7.Visible:=false;
    DataSource1.DataSet:=nil;
    xfsl.SetFocus;
end;

procedure Txfform.pdKeyPress(Sender: TObject; var Key: Char);
begin
   if ((key>'9') or (key<'0'))and (key<>#8) then key:=#0;
end;

procedure Txfform.pdExit(Sender: TObject);
begin
  { fm.Query1.Active:=false;
   fm.Query1.SQL.Clear;
   fm.Query1.SQL.Add('select name from stuff where isfwy=1 and (code='''+trim(pd.Text)+''' or name='''+trim(pd.Text)+''')');
   fm.Query1.Prepare;
   fm.Query1.Open;
   if fm.Query1.RecordCount=0 then
   begin
     showmessage('服务员输入不正确,请重新输入!');
     pd.Text:='';
     pd.CanFocus;
     pd.SetFocus;
   end else
    pd.Text:= fm.Query1.Fields[0].AsString; }

end;

procedure Txfform.cmbZYExit(Sender: TObject);
begin
   if (trim(cmbZY.Text)<>'') then
   begin
     try
        grid.Cells[4,grid.Row]:=trim(CmbZY.text);
     except
        grid.Cells[4,grid.Row]:=trim(cmbZY.Items.Strings[0]);
     end;
   end
   else
     grid.Cells[3,grid.Row]:='';
  cmbZY.itemIndex:=0;
  cmbZY.Visible:=False;
  CmbZy.Enabled:=false;
  ActiveControl:=grid;

end;

end.

⌨️ 快捷键说明

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