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

📄 mealform.pas

📁 简单的餐饮软件部分源码
💻 PAS
📖 第 1 页 / 共 3 页
字号:
                                 tcmealname[tcnoid].Caption:=Trim(FieldValues['mealname']);
                                 tcmealnu[tcnoid]:=TLabel.Create(nil);
                                 tcmealnu[tcnoid].Caption:=Trim(FieldValues['mealnu']);
                                 tcmealprice[tcnoid].Top:=tcmealbut[tcnoid].Height-tcmealprice[tcnoid].Height;
                                 tcmealprice[tcnoid].Left:=tcmealbut[tcnoid].Width-tcmealcode[tcnoid].Width-10;
                                 tcmealprice[tcnoid].Caption:=Trim(FieldValues['mealprice']);
                                if changew=3 then
                                  begin
                                    changew:=1;
                                    changeh:=changeh+51;
                                 end else begin
                                    changew:=changew+1;
                                          end;
                              Next;
                                end;
                             end;

              end;
          end;
         Gridchange(Sender);
      end;
    end;
end;
procedure Tmeal.mealxlbutclick(Sender:TObject);
var xlbut,t:Integer;
    keyid:string;
begin
   for xlbut:=1 to xlcount do
    begin
    if sender=newxlbut[xlbut] then
      begin
        keyid:=newxllabel[xlbut].Caption;
         with datam.keymealado do
         begin
          Close;
          SQL.Clear;
          SQL.Add('select mealid,mealname,unit,mealprice,suite from snkeymeal where keynameid1='''+keyid+''' or keynameid2='''+keyid+''' or keynameid3='''+keyid+'''');
          Open;
          mbut:=RecordCount;
         if mbut<=0 then exit;
          First;
          changew:=1;
          changeh:=0;
          panel2.Free;
          panel2:=Tpanel.Create(nil);
          panel2.Parent:=meal;
          panel2.Left:=403;
          panel2.Top:=87;
          panel2.Width:=screen.Width;
          panel2.Height:=screen.Height;
          for t:=1 to mbut do
           begin
            mealbut[t]:=TButton.Create(nil);
            mealbut[t].Parent:=panel2;
            mealbut[t].Height:=50;
            mealbut[t].Width:=130;
            mealbut[t].Caption:=Trim(FieldValues['mealname'])+'/'+Trim(FieldValues['unit']);
            mealbut[t].Left:=130*(changew-1);
            mealbut[t].Top:=changeh;
            mealbut[t].OnClick:=mealbutclick;
            gdlabel[t]:=TLabel.Create(nil);
            gdlabel[t].Caption:=Trim(FieldValues['suite']);
            mname[t]:=TLabel.Create(nil);
            mname[t].Caption:=Trim(FieldValues['mealname']);
            unitlabel[t]:=TLabel.Create(nil);
            unitlabel[t].Caption:=Trim(FieldValues['unit']);
            mealcode[t]:=TLabel.Create(nil);
            mealcode[t].Parent:=mealbut[t];
            mealcode[t].Top:=mealbut[t].Height-mealcode[t].Height;
            mealcode[t].Caption:=Trim(FieldValues['mealid']);
            mealcode[t].Visible:=False;
            mealprice[t]:=TLabel.Create(nil);
            mealprice[t].Parent:=mealbut[t];
            mealprice[t].Transparent:=True;
            mealprice[t].Caption:=Trim(FieldValues['mealprice']);
            mealprice[t].Top:=mealcode[t].Top;
            mealprice[t].Left:=mealbut[t].Width-mealprice[t].Width-10;
       if changew=3 then
         begin
           changew:=1;
           changeh:=changeh+51;
          end else begin
                    changew:=changew+1;
                   end;
         next;
           end;
        end;
          end;
       end;
end;
procedure Tmeal.visualxlmeal(Sender:TObject);
var rcid:Integer;
    Firstdlcode:string;
begin
  changew:=1;
  changeh:=0;
 panel1.Free;
 panel1:=TPanel.Create(nil);
 panel1.Parent:=meal;
 panel1.Left:=403;
 panel1.Top:=87;
 panel1.Width:=screen.Width;
 panel1.Height:=screen.Height;
  with Firstado do
    begin
     Close;
     SQL.Clear;
     SQL.Add('select * from sndlmeal');
     Open;
     First;
     Firstdlcode:=Trim(FieldValues['mealdlid']);
     Close;
     SQL.Clear;
     SQL.Add('select keynameid,keyidname from snkeyname where mealdlid='''+Firstdlcode+'''');
     Open;
     xlcount:=RecordCount;
     for rcid:=1 to xlcount do
      begin
       newxlbut[rcid]:=TButton.Create(nil);
       newxlbut[rcid].Parent:=panel1;
       newxlbut[rcid].Height:=50;
       newxlbut[rcid].Width:=130;
       newxlbut[rcid].Caption:=Trim(FieldValues['keyidname']);
       newxlbut[rcid].Left:=130*(changew-1);
       newxlbut[rcid].Top:=changeh;
       newxlbut[rcid].OnClick:=mealxlbutclick;
       if changew=3 then
         begin
           changew:=1;
            changeh:=changeh+51;
          end else begin
             changew:=changew+1;
            end;
        newxllabel[rcid]:=TLabel.Create(nil);
        newxllabel[rcid].Parent:=newxlbut[rcid];
        newxllabel[rcid].Caption:=Trim(FieldValues['keynameid']);
        newxllabel[rcid].Visible:=False;
        next;
      end;
    end;
end;
procedure Tmeal.mealvisual(Sender:TObject);
begin
 with datam.mealado do
   begin
    Close;
    SQL.Clear;
    SQL.Add(''+SQLStr+'');
    Open;
   end;
 with dbg1 do
   begin
     Columns[0].Title.caption:=Tcap1;
     Columns[1].Title.caption:=Tcap2;
     Columns[2].Title.caption:=Tcap3;
     Columns[3].Title.caption:=Tcap4;
     Columns[0].Title.Alignment:=taCenter;
     Columns[1].Title.Alignment:=taCenter;
     Columns[2].Title.Alignment:=taCenter;
     Columns[3].Title.Alignment:=taCenter;
     Columns[0].Width:=50;
     Columns[1].Width:=210;
     Columns[2].Width:=50;
     Columns[3].Width:=40;
     Columns[4].Visible:=False;
 end;
end;
procedure Tmeal.Gridchange(Sender:TObject);
begin
 with DataM.tempmealado do
   begin
    Close;
    SQL.Clear;
    SQL.Add('select mealname,mealprice,unit,mealcount,mealkw,mealtime,tcflag,mealid,pkflag from sntempmeal  where tablename='''+Ftableno+''' order by mealtime');
    Open;
    Last;
   end;
 with payado do
  begin
   close;
   SQL.Clear;
   SQL.Add('select sum(mealcount) ''stempcount'', sum(mealprice*mealcount) ''billpay''  from sntempmeal  where tablename='''+Ftableno+'''');
   Open;
   salecount:=FieldByName('stempcount').AsInteger;
   billpay:=FieldByName('billpay').AsFloat;
  end;
 with DBgrid do
   begin
     Columns[0].Title.caption:=Title1;
     Columns[1].Title.caption:=Title2;
     Columns[2].Title.caption:=Title3;
     Columns[3].Title.caption:=Title4;
     Columns[4].Title.caption:=Title5;
     Columns[0].Title.Alignment:=taCenter;
     Columns[1].Title.Alignment:=taCenter;
     Columns[2].Title.Alignment:=taCenter;
     Columns[3].Title.Alignment:=taCenter;
     Columns[4].Title.Alignment:=taCenter;
     Columns[0].Width:=160;
     Columns[2].Width:=30;
     Columns[3].Width:=40;
     Columns[5].Visible:=False;
     Columns[6].Visible:=False;
     Columns[7].Visible:=False;
     Columns[8].Visible:=False;
   end;
 edit1.Text:=IntToStr(salecount);
 edit2.Text:=FloatToStr(billpay);
end;
procedure Tmeal.mealdlbutclick(Sender:TObject);
var clickid,xlnu:integer;
begin
  changew:=1;
  changeh:=0;
  dbg1.Visible:=False;
  label3.Visible:=False;
  edit3.Visible:=False;
 panel1.Free;
 panel1:=TPanel.Create(nil);
 panel1.Parent:=meal;
 panel1.Left:=403;
 panel1.Top:=87;
 panel1.Width:=screen.Width;
 panel1.Height:=screen.Height;
 for clickid:=1 to Dlcout do
   begin
     if sender=NewBut[clickid] then
       begin
        codelabel:=NewLabel[clickid].Caption;
        with datam.mealxlado do
          begin
            Close;
            SQL.Clear;
            SQL.Add('select keynameid,keyidname from snkeyname where mealdlid='''+codelabel+'''');
            Open;
            xlcount:=RecordCount;
            First;
            for xlnu:=1 to xlcount do
             begin
                 newxlbut[xlnu]:=TButton.Create(nil);
                 newxlbut[xlnu].Parent:=panel1;
                 newxlbut[xlnu].Height:=50;
                 newxlbut[xlnu].Width:=130;
                 newxlbut[xlnu].Caption:=Trim(FieldValues['keyidname']);
                 newxlbut[xlnu].Left:=130*(changew-1);
                 newxlbut[xlnu].Top:=changeh;
                 newxlbut[xlnu].OnClick:=mealxlbutclick;
                  if changew=3 then
                    begin
                     changew:=1;
                     changeh:=changeh+51;
                    end else begin
                     changew:=changew+1;
                     end;
                 newxllabel[xlnu]:=TLabel.Create(nil);
                 newxllabel[xlnu].Parent:=newxlbut[xlnu];
                 newxllabel[xlnu].Caption:=Trim(FieldValues['keynameid']);
                 newxllabel[xlnu].Visible:=False;
              next;
            end;
          end;
      end;
    end;
end;
procedure Tmeal.FormShow(Sender: TObject);
Var i:Integer;
begin
 self.Caption:=Ftableno+DataM.SPLanguage.ReadString('captions','00027','');
 with DataM.mealdlado DO
   begin
    Close;
    SQL.Clear;
    SQL.Add('select * from sndlmeal');
    Open;
    Dlcout:=RecordCount;
    First;
  for i:=1 to Dlcout do
     begin
      NewBut[i]:=TButton.Create(nil);
      NewBut[i].Parent:=meal;
      NewBut[i].Top:=0;
      NewBut[i].Width:=66;
      NewBut[i].Height:=50;
      NewBut[i].Left:=NewBut[i].Width*(i-1);
      NewBut[i].Caption:=Trim(FieldValues['mealname']);
      NewBut[i].OnClick:=mealdlbutclick;
      NewLabel[i]:=TLabel.Create(nil);
      NewLabel[i].Parent:=NewBut[i];
      NewLabel[i].Caption:=Trim(FieldValues['mealdlid']);
      NewLabel[i].Left:=0;
      NewLabel[i].Top:=0;
      NewLabel[i].Visible:=False;
      next;
     end;
   end;
 gbox1.Left:=0;
 gbox1.Top:=50;
 gbox1.Width:=screen.Width;
 edit4.Width:=screen.Width;
 dbgrid.Left:=0;
 dbgrid.Top:=84;
 dbgrid.Width:=320;
 dbgrid.Height:=screen.Height-dbgrid.Top-edit1.Height*3;
 gbox2.Top:=dbgrid.Top;
 gbox2.Height:=screen.Height-gbox2.Top;
 lcount.Left:=0;
 lcount.Top:=dbgrid.Top+dbgrid.Height+1;
 edit1.Left:=lcount.Left+lcount.Width;
 edit1.Top:=lcount.Top;
 lpay.Left:=edit1.Left+edit1.Width;
 lpay.Top:=lcount.Top;
 edit2.Left:=lpay.Left+lpay.Width;
 edit2.Top:=lpay.Top;
 label3.Top:=dbg1.Top-label3.Height*2;
 label3.Left:=dbg1.Left+2;
 edit3.Top:=label3.Top;
 edit3.Left:=label3.Left+label3.Width+2;
 Gridchange(Sender);
 visualxlmeal(Sender);
end;
procedure Tmeal.FormCreate(Sender: TObject);
begin
 Title1:=DataM.SPLanguage.ReadString('captions','00020','');
 Title2:=DataM.SPLanguage.ReadString('captions','00021','');
 Title3:=DataM.SPLanguage.ReadString('captions','00022','');
 Title4:=DataM.SPLanguage.ReadString('captions','00023','');
 Title5:=DataM.SPLanguage.ReadString('captions','00024','');
 lcount.Caption:=DataM.SPLanguage.ReadString('captions','00025','');
 lpay.Caption:=DataM.SPLanguage.ReadString('captions','00026','');
 but1.Caption:=DataM.SPLanguage.ReadString('captions','00028','');
 but2.Caption:=DataM.SPLanguage.ReadString('captions','00029','');
 but3.Caption:=DataM.SPLanguage.ReadString('captions','00030','');
 but4.Caption:=DataM.SPLanguage.ReadString('captions','00031','');
 but5.Caption:=DataM.SPLanguage.ReadString('captions','00032','');
 but6.Caption:=DataM.SPLanguage.ReadString('captions','00033','');
 but7.Caption:=DataM.SPLanguage.ReadString('captions','00040','');
 but8.Caption:=DataM.SPLanguage.ReadString('captions','00034','');
 but9.Caption:=DataM.SPLanguage.ReadString('captions','00101','');
 but10.Caption:=DataM.SPLanguage.ReadString('captions','00102','');

⌨️ 快捷键说明

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