📄 frmmain.pas
字号:
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 + -