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

📄 frmmain.pas

📁 超市管理系统
💻 PAS
📖 第 1 页 / 共 4 页
字号:
begin
   if not Checkrights(USERRIGHTS,'查看') then
   begin
      messagedlg(Errormsg0006+'0007',mterror,[mbok],0);
      exit;
   end;
   application.CreateForm(TFrm_main_query_scjhmx,Frm_main_query_scjhmx);
   Frm_main_query_scjhmx.Dock(panel_main,BoundsRect);
   Frm_main_query_scjhmx.show;
end;

procedure TFrm_main.Menu_ywcx_ckjhtjClick(Sender: TObject);
begin
   if not Checkrights(USERRIGHTS,'查看') then
   begin
      messagedlg(Errormsg0006+'0007',mterror,[mbok],0);
      exit;
   end;
   application.CreateForm(TFrm_main_query_ckjhtj,Frm_main_query_ckjhtj);
   Frm_main_query_ckjhtj.Dock(panel_main,BoundsRect);
   Frm_main_query_ckjhtj.show;
end;

procedure TFrm_main.Menu_ywcx_ckjhmxClick(Sender: TObject);
begin
   if not Checkrights(USERRIGHTS,'查看') then
   begin
      messagedlg(Errormsg0006+'0007',mterror,[mbok],0);
      exit;
   end;
   application.CreateForm(TFrm_main_query_ckjhmx,Frm_main_query_ckjhmx);
   Frm_main_query_ckjhmx.Dock(panel_main,BoundsRect);
   Frm_main_query_ckjhmx.show;
end;

procedure TFrm_main.Menu_ywcx_sckcsptjClick(Sender: TObject);
begin
   if not Checkrights(USERRIGHTS,'查看') then
   begin
      messagedlg(Errormsg0006+'0007',mterror,[mbok],0);
      exit;
   end;
   application.CreateForm(TFrm_main_query_kcsptj,Frm_main_query_kcsptj);
   Frm_main_query_kcsptj.Dock(panel_main,BoundsRect);
   Frm_main_query_kcsptj.show;
end;

procedure TFrm_main.Menu_windowsClick(Sender: TObject);
var
   PopUpItems: array of  TMenuItem;
   I_record:integer;
begin
   Menu_windows_now.Clear ;
   setlength(PopUpItems,Panel_main.DockClientCount);
   for I_record:=0 to Panel_main.DockClientCount - 1 do
   begin
         PopUpItems[I_record]:=TMenuItem.Create(Self);
         PopUpItems[I_record].Caption:=(Panel_main.DockClients[I_record] as Tform).caption +'[&'+chr(65+I_record)+']';
         PopUpItems[I_record].Checked :=(Panel_main.DockClients[I_record] as Tform).Showing ;
         PopUpItems[I_record].OnClick :=User_switchwindows;
         Menu_windows_now.Add(PopUpItems[I_record]);
   end;
   if Panel_main.DockClientCount > 0 then
   begin
      Menu_windows_now.Enabled :=true;
      Menu_windows_showall.Enabled :=true;
      Menu_windows_closenow.Enabled :=true;
      Menu_windows_closeall.Enabled :=true;
   end
   else
   begin
      Menu_windows_now.Enabled :=false;
      Menu_windows_showall.Enabled :=false;
      Menu_windows_closenow.Enabled :=false;
      Menu_windows_closeall.Enabled :=false;
   end;
end;

procedure TFrm_main.User_switchwindows(Sender: Tobject);      //数据窗口切换
var
   I_windowsindex,I_temp:integer;
begin
   for I_temp:=0 to panel_main.DockClientCount -1 do
   begin
       panel_main.DockClients[I_temp].Hide ;
   end;
   I_windowsindex:=(Sender as TMenuItem).MenuIndex ;
   panel_main.DockClients[I_windowsindex].Show ;
   (panel_main.DockClients[I_windowsindex] as Tform).SetFocus ;
end;

procedure TFrm_main.Menu_windows_showallClick(Sender: TObject);      //打开所有窗口
var
   I_temp:integer;
begin
   if panel_main.DockClientCount=1 then exit;  //只有一个窗口时退出
   //以下程序可能还有问题
   for I_temp:=0 to panel_main.DockClientCount -1 do
   begin
      (panel_main.DockClients[I_temp]as Tform).Show ;
      //可能不需要下一句
      //application.ProcessMessages ;
   end;
   //通过假定人为调整小大达到RESIZE的目的,暂时没有其它办法了
   panel_left.Width :=panel_left.Width +1 ;
   panel_left.Width :=panel_left.Width -1 ;
end;

procedure TFrm_main.Menu_windows_closenowClick(Sender: TObject);     //关闭当前窗口
var
   I_temp:integer;
begin
   for I_temp:=0 to panel_main.DockClientCount -1 do
   begin
      if (panel_main.DockClients[I_temp] as Tform).Showing  then
      begin
         (panel_main.DockClients[I_temp] as Tform).Close ;
      end;
   end;
end;

procedure TFrm_main.Menu_windows_closeallClick(Sender: TObject);       //关闭所有窗口
var
   I_temp,I_windowscount:integer;
begin
   I_windowscount:=panel_main.DockClientCount;
   for I_temp:=0 to I_windowscount-1 do
   begin
      try
         (panel_main.DockClients[0] as Tform).Close ;
         application.ProcessMessages ;
         //窗口未被正常关闭,退出
         if I_windowscount - (I_temp +1)<panel_main.DockClientCount then
         begin
            exit;
         end;
      except
         exit;
      end;
   end;
end;

procedure TFrm_main.Menu_ywcx_sclskccxClick(Sender: TObject);
begin
   if not Checkrights(USERRIGHTS,'查看') then
   begin
      messagedlg(Errormsg0006+'0007',mterror,[mbok],0);
      exit;
   end;
   application.CreateForm(TFrm_main_query_lskccx,Frm_main_query_lskccx);
   Frm_main_query_lskccx.Dock(panel_main,BoundsRect);
   Frm_main_query_lskccx.show;
end;

procedure TFrm_main.Menu_ywcx_scspjxcmxClick(Sender: TObject);
begin
   if not Checkrights(USERRIGHTS,'查看') then
   begin
      messagedlg(Errormsg0006+'0007',mterror,[mbok],0);
      exit;
   end;
   application.CreateForm(TFrm_main_query_spjxcmx,Frm_main_query_spjxcmx);
   Frm_main_query_spjxcmx.Dock(panel_main,BoundsRect);
   Frm_main_query_spjxcmx.show;
end;

procedure TFrm_main.Menu_ywcx_spfbClick(Sender: TObject);
begin
   if not Checkrights(USERRIGHTS,'查看') then
   begin
      messagedlg(Errormsg0006+'0007',mterror,[mbok],0);
      exit;
   end;
   application.CreateForm(TFrm_main_query_spfb,Frm_main_query_spfb);
   Frm_main_query_spfb.Dock(panel_main,BoundsRect);
   Frm_main_query_spfb.show;
end;

procedure TFrm_main.Menu_tools_gzClick(Sender: TObject);
begin
   if not Checkrights(USERRIGHTS,'查看') then
   begin
      messagedlg(Errormsg0006+'0007',mterror,[mbok],0);
      exit;
   end;
   application.CreateForm(TFrm_main_query_ywygz,Frm_main_query_ywygz);
   Frm_main_query_ywygz.Dock(panel_main,BoundsRect);
   Frm_main_query_ywygz.show;
end;

procedure TFrm_main.Menu_tools_data_backupClick(Sender: TObject);
begin
   if not Checkrights(USERRIGHTS,'高级') then
   begin
      messagedlg(Errormsg0006+'0007',mterror,[mbok],0);
      exit;
   end;
   application.CreateForm(TFrm_backup,Frm_backup);
   Frm_backup.ShowModal ;
   Frm_backup.free;
end;

procedure TFrm_main.FormShow(Sender: TObject);
begin
   FSB_datainput.Click ;
end;

procedure TFrm_main.Menu_file_checkoutClick(Sender: TObject);
var
   I_windows:integer;
   B_havedata:boolean;
begin
   if not Checkrights(USERRIGHTS,'高级') then
   begin
      messagedlg(Errormsg0006+'0007',mterror,[mbok],0);
      exit;
   end;
   if panel_main.DockClientCount > 0 then
   begin
      for I_windows:=0 to panel_main.DockClientCount -1 do
      begin
         if panel_main.DockClients[I_windows].Visible then
         begin
            B_havedata:=false;
            try
               if (((panel_main.DockClients[I_windows] as Tform).Controls[2] as Tpanel).Controls[0] as Tpanel).Controls[1].Name='DBG_data' then
                  B_havedata:=true;
            except
               B_havedata:=false;
            end;
            if B_havedata then
            begin
               application.CreateForm(TFrm_checkout,Frm_checkout);
               Frm_checkout.Caption :='【'+(panel_main.DockClients[I_windows] as Tform).Caption+'】 - 数据导出';
               Frm_checkout.DBG_savedata:=(((panel_main.DockClients[I_windows] as Tform).Controls[2] as Tpanel).Controls[0] as Tpanel).Controls[1] as Tdbgrid;
               Frm_checkout.E_filename.Text :=(panel_main.DockClients[I_windows] as Tform).Caption +'.CSV';
               Frm_checkout.ShowModal ;
               Frm_checkout.free;
            end
            else
            begin
               messagedlg('【'+(panel_main.DockClients[I_windows] as Tform).Caption + '】中的数据不可以导出!',mtInformation,[mbok],0);
            end;
         end;
      end;
   end;
end;

procedure TFrm_main.Menu_fileClick(Sender: TObject);
begin
   Menu_file_checkout.Enabled :=(panel_main.DockClientCount > 0);
   Menu_file_saveas.Enabled :=(panel_main.DockClientCount > 0);
end;

procedure TFrm_main.Menu_file_logClick(Sender: TObject);
begin
   if frm_message.Showing then
      frm_message.Hide
   else
   begin
      if frm_message.PopMenu_notshow.Checked then
         frm_message.PopMenu_autohide.Click ;
      frm_message.show;
   end;
end;

procedure TFrm_main.PopupMenu_toolbar_customClick(Sender: TObject);
//var
//   I_index:integer;
begin
  Toolbar_main.Perform(TB_CUSTOMIZE, 1, 0);
{   for I_index:=0 to Toolbar_main.ButtonCount -1 do
   begin
      if not Toolbar_main.Buttons[I_index].Visible then
         Toolbar_main.Perform(TB_DELETEBUTTON,I_index, 0) ;
  end;
 }
end;

procedure TFrm_main.FormClose(Sender: TObject; var Action: TCloseAction);
begin
   frm_message.Memo_message.Lines.Append(datetimetostr(now)+':'+USERNAME+' - 关闭');
   try
      frm_message.Memo_message.Lines.SaveToFile(S_logfile);
   except
      messagedlg('系统日志保存失败!',mtInformation,[mbok],0);
   end;
end;

procedure TFrm_main.Menu_chart_ywyxsClick(Sender: TObject);
begin
   if not Checkrights(USERRIGHTS,'查看') then
   begin
      messagedlg(Errormsg0006+'0007',mterror,[mbok],0);
      exit;
   end;
   Application.CreateForm(TFrm_chart_ywyxs,frm_chart_ywyxs);
   frm_chart_ywyxs.showmodal;
   frm_chart_ywyxs.free;
end;

procedure TFrm_main.Menu_chart_scxsClick(Sender: TObject);
begin
   if not Checkrights(USERRIGHTS,'查看') then
   begin
      messagedlg(Errormsg0006+'0007',mterror,[mbok],0);
      exit;
   end;
   Application.CreateForm(TFrm_chart_SCxs,Frm_chart_SCxs);
   Frm_chart_SCxs.showmodal;
   Frm_chart_SCxs.free;
end;

procedure TFrm_main.Menu_toolsClick(Sender: TObject);
var
   PopUpItems: array of  TMenuItem;
   I_record:integer;
begin
   try
      Menu_tools_logsetup.Clear ;
   except
      exit;
   end;
   if frm_message.Showing then      //日志文件已打开
   begin
      Menu_tools_logsetup.Enabled :=true;
      setlength(PopUpItems,frm_message.PopMenu.Items.Count);
      for I_record:=0 to high(popupitems)-1 do
      begin
         PopUpItems[I_record]:=TMenuItem.Create(Self);
         PopUpItems[I_record].Caption:=frm_message.PopMenu.Items[I_record].Caption;
         PopUpItems[I_record].Checked :=frm_message.PopMenu.Items[I_record].Checked ;
         PopUpItems[I_record].RadioItem :=frm_message.PopMenu.Items[I_record].RadioItem ;
         PopUpItems[I_record].GroupIndex :=frm_message.PopMenu.Items[I_record].GroupIndex ;
         PopUpItems[I_record].OnClick :=frm_message.PopMenu.Items[I_record].OnClick ;
         Menu_tools_logsetup.Add(PopUpItems[I_record]);
      end;
   end
   else
      Menu_tools_logsetup.Enabled :=false;
end;

end.

⌨️ 快捷键说明

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