📄 unitmain.pas
字号:
unit UnitMain;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, ImgList, _GClass, AbGradient, ComCtrls, ToolWin, ExtCtrls,
ShellApi, AppEvnts, RXShell, XPMenu, Buttons;
const
my_paint=WM_USER+100;//自定义消息从100开始
CM_RESTORE = WM_USER + $1000; {自定义的“恢复”消息}
MYAPPNAME = 'myqcgl';
type
TfrmMain = class(TForm)
ImageList1: TImageList;
MainMenu1: TMainMenu;
m_base: TMenuItem;
m_StockOp: TMenuItem;
m_report: TMenuItem;
m_Syssetup: TMenuItem;
m_exit: TMenuItem;
m_Help: TMenuItem;
n_Kf: TMenuItem;
n_OutInType: TMenuItem;
n_PdType: TMenuItem;
n_Quality: TMenuItem;
N13: TMenuItem;
n_baseStock: TMenuItem;
N15: TMenuItem;
N1: TMenuItem;
N9: TMenuItem;
n_PyPk: TMenuItem;
n_cg: TMenuItem;
n_zz: TMenuItem;
n_ProductIn: TMenuItem;
n_TL: TMenuItem;
n_ProductOut: TMenuItem;
n_Ly: TMenuItem;
n_Bf: TMenuItem;
StatusBar1: TStatusBar;
m_qry: TMenuItem;
n_JLunit: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N11: TMenuItem;
n_help: TMenuItem;
n_about: TMenuItem;
n_dept: TMenuItem;
n_gys: TMenuItem;
n_kw: TMenuItem;
S1: TMenuItem;
N2: TMenuItem;
n_dj: TMenuItem;
N20: TMenuItem;
N21: TMenuItem;
N22: TMenuItem;
N23: TMenuItem;
N24: TMenuItem;
N25: TMenuItem;
N26: TMenuItem;
N27: TMenuItem;
N28: TMenuItem;
N31: TMenuItem;
N32: TMenuItem;
N33: TMenuItem;
n_exit: TMenuItem;
n_ExitWin: TMenuItem;
N10: TMenuItem;
n_kh: TMenuItem;
N17: TMenuItem;
n_Lb: TMenuItem;
N18: TMenuItem;
N19: TMenuItem;
N29: TMenuItem;
N4: TMenuItem;
N3: TMenuItem;
N12: TMenuItem;
N14: TMenuItem;
n_planNum: TMenuItem;
N16: TMenuItem;
RxTrayIcon1: TRxTrayIcon;
ApplicationEvents1: TApplicationEvents;
PopupMenu1: TPopupMenu;
N8: TMenuItem;
N30: TMenuItem;
XPMenu1: TXPMenu;
N34: TMenuItem;
ToolBar2: TToolBar;
SpeedButton15: TSpeedButton;
SpeedButton13: TSpeedButton;
Splitter1: TSplitter;
SpeedButton12: TSpeedButton;
SpeedButton11: TSpeedButton;
SpeedButton10: TSpeedButton;
Splitter2: TSplitter;
SpeedButton16: TSpeedButton;
Splitter3: TSplitter;
SpeedButton14: TSpeedButton;
Splitter4: TSplitter;
Splitter5: TSplitter;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
procedure FormCreate(Sender: TObject);
procedure OpenMDIChild(TChild:TComponentClass;var Child);
procedure n_KfClick(Sender: TObject);
procedure n_PdTypeClick(Sender: TObject);
procedure n_baseStockClick(Sender: TObject);
procedure n_OutInTypeClick(Sender: TObject);
procedure n_QualityClick(Sender: TObject);
procedure n_JLunitClick(Sender: TObject);
procedure n_cgClick(Sender: TObject);
procedure N5Click(Sender: TObject);
procedure n_aboutClick(Sender: TObject);
procedure n_zzClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure n_deptClick(Sender: TObject);
procedure n_gysClick(Sender: TObject);
procedure n_ProductInClick(Sender: TObject);
procedure n_kwClick(Sender: TObject);
procedure n_ProductOutClick(Sender: TObject);
procedure n_LyClick(Sender: TObject);
procedure n_TLClick(Sender: TObject);
procedure n_helpClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure n_BfClick(Sender: TObject);
procedure n_PyPkClick(Sender: TObject);
procedure n_exitClick(Sender: TObject);
procedure n_ExitWinClick(Sender: TObject);
procedure N10Click(Sender: TObject);
procedure N27Click(Sender: TObject);
procedure N28Click(Sender: TObject);
procedure N29Click(Sender: TObject);
procedure N22Click(Sender: TObject);
procedure N17Click(Sender: TObject);
procedure n_LbClick(Sender: TObject);
procedure n_djClick(Sender: TObject);
procedure N31Click(Sender: TObject);
procedure N18Click(Sender: TObject);
procedure n_khClick(Sender: TObject);
procedure N14Click(Sender: TObject);
procedure N8Click(Sender: TObject);
procedure n_planNumClick(Sender: TObject);
procedure N16Click(Sender: TObject);
procedure ApplicationEvents1Minimize(Sender: TObject);
procedure ApplicationEvents1Restore(Sender: TObject);
procedure RxTrayIcon1DblClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
StrOperat:string;
end;
var
frmMain: TfrmMain;
implementation
uses UnitStockRoom, UnitPdType, UnitMateBasic, UnitInOutClass, UnitQuality,
UnitJLUnit, UnitStockIn, UnitInStockList, UnitAbout, UnitDm, UnitDept,
UnitGys, UnitStockPosition, UnitProductIn, UnitProductOut, UnitLy,
UnitTuiLiao, UnitStockZz, UnitQryStockMate, UnitMateNumChg,
UnitMonthStock, UnitOp, UnitBaoFei, UnitPyPk, UnitQryCondition,
UnitMateClass, UnitBillPrint, UnitQryDj, UnitInOutDjQry, UnitCustomer,
UnitPlanNum, UnitMateNumPlanQry;
{$R *.dfm}
procedure TfrmMain.FormCreate(Sender: TObject);
var
temp:string;
begin
statusbar1.Panels[0].text:='准备';
temp:='今天日期:【'+FormatDateTime('yyyy-mm-dd dddd', now)+'】';
statusbar1.Panels[1].text:=temp;
statusbar1.Panels[1].width:=statusbar1.Canvas.TextWidth(temp)+25;
temp:='现在时间:【'+FormatDateTime('hh:mm:ss', now)+'】';
statusbar1.Panels[2].text:=temp;
statusbar1.Panels[2].width:=statusbar1.Canvas.TextWidth(temp)+20;
statusbar1.Panels[4].text:='武汉凡谷信息中心研制 【凡谷软件】';
ModifyMenu(MainMenu1.Handle,6, mf_ByPosition or mf_help,m_help.Handle, '帮助(&F)');
end;
procedure TfrmMain.FormShow(Sender: TObject);
begin
DM.ADO_C.Connected:=True;
if DM.ADO_C.Connected=False then
begin
application.messagebox('请检查服务器是否连接正常!','提示',mb_ok+mb_iconwarning);
exit;
end;
end;
procedure TfrmMain.OpenMDIChild(TChild:TComponentClass;var Child);
var
I:Integer;
total:integer;//子窗口个数
begin
try
lockwindowupdate(clienthandle);
total:=frmMain.MDIChildCount;
if total > 0 then
begin
for I:=frmMain.MDIChildCount-1 DownTo 0 do
begin
frmMain.MDIChildren[i].close;
end;// end for
Application.CreateForm(TChild,Tform(Child));
end
else if frmMain.MDIChildCount=0 then
begin
Application.CreateForm(TChild,Tform(Child));
end;
finally
lockwindowupdate(0);
end;
end;
//库房代码设置
procedure TfrmMain.n_KfClick(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmStockRoom,frmStockRoom);
end;
//库位代码设置
procedure TfrmMain.n_kwClick(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmStockPosition,frmStockPosition);
end;
//计量单位
procedure TfrmMain.n_JLunitClick(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmJLUnit,frmJLUnit);
end;
procedure TfrmMain.n_OutInTypeClick(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmInOutClass,frmInOutClass);
end;
//材料类别代码设置
procedure TfrmMain.n_LbClick(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmMateClass,frmMateClass);
end;
//盘点类别设置
procedure TfrmMain.n_PdTypeClick(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmPdType,frmPdType);
end;
//品质代码设置
procedure TfrmMain.n_QualityClick(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmQuality,frmQuality);
end;
//部门代码设置
procedure TfrmMain.n_deptClick(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmDept,frmDept);
end;
//供应商代码设置
procedure TfrmMain.n_gysClick(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmGys,frmGys);
end;
//计划编号所对应的计划数量
procedure TfrmMain.n_planNumClick(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmPlanNum,frmPlanNum);
end;
procedure TfrmMain.n_baseStockClick(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmMateBasic,frmMateBasic);
end;
//采购入库
procedure TfrmMain.n_cgClick(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmStockIn,frmStockIn);
end;
//自制入库------即零部件入库
procedure TfrmMain.n_zzClick(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmStockZz,frmStockZz);
end;
//成品入库
procedure TfrmMain.n_ProductInClick(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmProductIn,frmProductIn);
end;
//退料入库
procedure TfrmMain.n_TLClick(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmTuiLiao,frmTuiLiao);
end;
//
procedure TfrmMain.N5Click(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmInStockList,frmInStockList);
end;
procedure TfrmMain.n_aboutClick(Sender: TObject);
begin
frmAbout:=TfrmAbout.create(application);
frmAbout.show;
end;
//成品出库
procedure TfrmMain.n_ProductOutClick(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmProductOut,frmProductOut);
end;
//材料领用
procedure TfrmMain.n_LyClick(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmLy,frmLy);
end;
//报废出库
procedure TfrmMain.n_BfClick(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmBaoFei,frmBaoFei);
end;
//盘盈盘亏
procedure TfrmMain.n_PyPkClick(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmPyPk,frmPyPk);
end;
procedure TfrmMain.n_helpClick(Sender: TObject);
var
fpath:string;
begin
fpath:=ExtractFilePath(ParamStr(0))+'阿凡提笑话.chm'; //得到帮助文件的路径
ShellExecute(handle,nil,pchar(fpath),nil,nil,sw_shownormal); //调用前要加ShellApi
end;
procedure TfrmMain.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if application.MessageBox('要退出库存管理系统吗?','确认',mb_YesNo+MB_ICONQUESTION)=IDYes then
begin
Application.Terminate;
end else
begin
Application.Run;
end;
end;
procedure TfrmMain.n_exitClick(Sender: TObject);
begin
close;
end;
procedure TfrmMain.n_ExitWinClick(Sender: TObject);
begin
ExitWindowsEx(EWX_SHUTDOWN,0); //EWX_SHUTDOWN,EWX_REBOOT,EWX_POWEROFF
end;
procedure TfrmMain.N10Click(Sender: TObject);
begin
winexec('calc',sw_show);
end;
procedure TfrmMain.N27Click(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmQryCondition,frmQryCondition);
end;
procedure TfrmMain.N16Click(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmMateNumPlanQry,frmMateNumPlanQry);
end;
procedure TfrmMain.N28Click(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmMateNumChg,frmMateNumChg);
end;
procedure TfrmMain.N29Click(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmMonthStock,frmMonthStock);
end;
procedure TfrmMain.N22Click(Sender: TObject);
var
myoper:TfrmOp;
begin
myoper:=TfrmOp.create(application);
try
myoper.showmodal;
finally
myoper.free;
end;
end;
procedure TfrmMain.N17Click(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmQryCondi,frmQryCondi);
end;
procedure TfrmMain.n_djClick(Sender: TObject);
begin
frmBillPrint:=TfrmBillPrint.create(application);
frmBillPrint.showmodal;
end;
procedure TfrmMain.N31Click(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmQryDj,frmQryDj);
end;
procedure TfrmMain.N18Click(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmInOutDjQry,frmInOutDjQry);
end;
procedure TfrmMain.n_khClick(Sender: TObject);
begin
frmMain.OpenMDIChild(TfrmCustomer,frmCustomer);
end;
procedure TfrmMain.N14Click(Sender: TObject);
begin
winexec('UDPDEMO',sw_show);
end;
procedure TfrmMain.N8Click(Sender: TObject);
begin
showmessage('通讯产品价格下降!');
end;
procedure TfrmMain.ApplicationEvents1Minimize(Sender: TObject);
begin
ShowWindow(Application.Handle,SW_HIDE);
Application.BeforeDestruction;
end;
procedure TfrmMain.ApplicationEvents1Restore(Sender: TObject);
begin
ShowWindow(Application.Handle,SW_SHOW);
end;
procedure TfrmMain.RxTrayIcon1DblClick(Sender: TObject);
begin
RxTrayIcon1.Hint:='仓储系统V1.1';
Application.Restore;
Application.BringToFront;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -