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

📄 umain.pas

📁 是个办公系统,可以实现财务上的管理和人员的流动
💻 PAS
字号:
unit Umain;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, ComCtrls, ToolWin, XPMan, Buttons, ExtCtrls,QStdCtrls,
  StdActns, ActnList;

type
  TfrmMain = class(TForm)
    MainMenu1: TMainMenu;
    EmpMgr: TMenuItem;
    ClientMgr: TMenuItem;
    BusinessMgr: TMenuItem;
    MoneyMgr: TMenuItem;
    systemMgr: TMenuItem;
    StatusBar1: TStatusBar;
    empInfo: TMenuItem;
    empRaise: TMenuItem;
    XPManifest1: TXPManifest;
    CoolBar1: TCoolBar;
    sbtnEmpBrowse: TSpeedButton;
    sbtnServiceBrowse: TSpeedButton;
    sbtnSalaryBrowse: TSpeedButton;
    sbtnBusiBrowse: TSpeedButton;
    sbtnClientBrowse: TSpeedButton;
    sbtnExit: TSpeedButton;
    SalaryBrowse: TMenuItem;
    DailyCost: TMenuItem;
    Windows: TMenuItem;
    userAdd: TMenuItem;
    passwdModify: TMenuItem;
    loginHistory: TMenuItem;
    N13: TMenuItem;
    BusinessTip: TMenuItem;
    N15: TMenuItem;
    N16: TMenuItem;
    Exit: TMenuItem;
    Statistic: TMenuItem;
    dataBase: TMenuItem;
    ClientBrowse: TMenuItem;
    ServiceBrowse: TMenuItem;
    OrdersArrange: TMenuItem;
    BusinessInfo: TMenuItem;
    Timer1: TTimer;
    N1: TMenuItem;
    N2: TMenuItem;
    N3: TMenuItem;
    ActionList1: TActionList;
    WindowCascade1: TWindowCascade;
    WindowTileHorizontal1: TWindowTileHorizontal;
    WindowTileVertical1: TWindowTileVertical;
    Cascade: TMenuItem;
    Vertical: TMenuItem;
    Horizontal: TMenuItem;
    N4: TMenuItem;
    About: TMenuItem;
    procedure sbtnEmpBrowseClick(Sender: TObject);
    procedure empRaiseClick(Sender: TObject);
    procedure SalaryBrowseClick(Sender: TObject);
    procedure DailyCostClick(Sender: TObject);
    procedure empInfoClick(Sender: TObject);
    procedure ServiceBrowseClick(Sender: TObject);
    procedure BusinessInfoClick(Sender: TObject);
    procedure ClientBrowseClick(Sender: TObject);
    procedure OrdersArrangeClick(Sender: TObject);
    procedure BusinessTipClick(Sender: TObject);
    procedure sbtnBusiBrowseClick(Sender: TObject);
    procedure sbtnClientBrowseClick(Sender: TObject);
    procedure sbtnServiceBrowseClick(Sender: TObject);
    procedure sbtnSalaryBrowseClick(Sender: TObject);
    procedure sbtnExitClick(Sender: TObject);
    procedure userAddClick(Sender: TObject);
    procedure passwdModifyClick(Sender: TObject);
    procedure dataBaseClick(Sender: TObject);
    procedure loginHistoryClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    procedure Timer1Timer(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure N1Click(Sender: TObject);
    procedure N2Click(Sender: TObject);
    procedure AboutClick(Sender: TObject);
    procedure ExitClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    function Encrypt(Text:string):string;
  end;
var
  frmMain: TfrmMain;

implementation

uses UpublcBrower, UemployeeMgr, UpersonalChange, UarrangeOrders, Usalary,
  UdailyCost, Userver, Ucustom, UtodayWork, Usysmanadd, Upasschg,
  Udatecontrol, Ulogdaily, UlogIn, MyData, Userverchg, Userverchart,
  utotal, Uabout;
{$R *.dfm}
procedure AddLogIn;
begin
   with dm.AQHistory do
 begin
   close;
   sql.Clear;
   sql.Add('INSERT INTO LogHistory(UserID,LogInTime,LogOutTime)');
   sql.Add('values (');
   sql.Add(''''+UserName+''',');
   sql.Add(''''+FormatDateTime('yyyy-mm-dd hh:mm:ss',LogInTime)+''',');
   sql.Add(''''+FormatDateTime('yyyy-mm-dd hh:mm:ss',Now)+'''');
   sql.Add(')');
   ExecSQL;
 end;
end;
//得到使用时间
function TimeGetStamp(T2:string):String;
var
  h1,m1,s1,n1,h2,m2,s2,n2:word;
  hh,mm,ss:Longint;
  strtime :Longint;
begin
   Decodetime(now,h1,m1,s1,n1);
   Decodetime(StrtoTime(T2),h2,m2,s2,n2);
   hh := h1*3600+m1*60+s1;
   mm := h2*3600+m2*60+s2;
  if hh > mm then
   strtime :=hh-mm
  else
   strtime :=hh-mm+24*3600;

   hh := Strtime div 3600;
   mm := Strtime mod 3600 div 60 ;
   ss := Strtime mod 60;
   Result := inttoStr(hh) +'小时'+ inttoStr( mm) +'分'+inttoStr(ss)+'秒';
end;
function TfrmMain.Encrypt(Text:string):string;//用户加密与解密
var
 Temp:string;
 CharStr:char;
 i,ASC:Integer;
begin
  Result:='';
  Temp:=Text;
  for i:=1 to Length(Temp)do
   begin
    CharStr:=Temp[i];
    ASC:=ord(CharStr) xor i;
    Result:=Result+chr(ASC);
   end;
end;
//自定义的函数--打开Child窗体。
procedure OpenForm(FormClass: TFormClass; var fm; AOwner:TComponent);
var
  i: integer;
  Child:TForm;
begin
  for i := 0 to Screen.FormCount -1 do
      if Screen.Forms[i].ClassType=FormClass then
      begin
        Child:=Screen.Forms[i];
        if Child.WindowState=wsMinimized then   
           ShowWindow(Child.handle,SW_SHOWNORMAL)
        else
           ShowWindow(Child.handle,SW_SHOWNA);
        if (not Child.Visible) then Child.Visible:=True;
        Child.BringToFront;
        Child.Setfocus;
        TForm(fm):=Child;
        exit;
      end;
  Child:=TForm(FormClass.NewInstance);
  TForm(fm):=Child;
  Child.Create(AOwner);
end;

procedure TfrmMain.sbtnEmpBrowseClick(Sender: TObject);
begin
  OpenForm(TfrmEmployeeMgr,frmEmployeeMgr,self);
  frmEmployeeMgr.WindowState:=wsMaximized;
end;

procedure TfrmMain.empRaiseClick(Sender: TObject);
begin
   OpenForm(TfrmPersonalChange,frmPersonalChange,self);
end;

procedure TfrmMain.SalaryBrowseClick(Sender: TObject);
begin
  OpenForm(TfrmSalary,frmSalary,self);
  frmSalary.WindowState:=wsMaximized;
end;

procedure TfrmMain.DailyCostClick(Sender: TObject);
begin
  OpenForm(TfrmDailyCost,frmDailyCost,self);
end;

procedure TfrmMain.empInfoClick(Sender: TObject);
begin
  OpenForm(TfrmEmployeeMgr,frmEmployeeMgr,self);
   frmEmployeeMgr.WindowState:=wsMaximized;
end;

procedure TfrmMain.ServiceBrowseClick(Sender: TObject);
begin
  OpenForm(TfrmServer,frmServer,self);
  frmServer.WindowState:=wsMaximized;
end;

procedure TfrmMain.BusinessInfoClick(Sender: TObject);
begin
   OpenForm(TfrmCustomer,frmCustomer,self);
  frmCustomer.WindowState:=wsMaximized;
end;

procedure TfrmMain.ClientBrowseClick(Sender: TObject);
begin
 OpenForm(TfrmPublicBrower,frmPublicBrower,self);
  frmPublicBrower.WindowState:=wsMaximized;
end;

procedure TfrmMain.OrdersArrangeClick(Sender: TObject);
begin
  OpenForm(TfrmArrangeOrders,frmArrangeOrders,self);
end;

procedure TfrmMain.BusinessTipClick(Sender: TObject);
begin
  OpenForm(TfrmTodayWork,frmTodayWork,self);
end;

procedure TfrmMain.sbtnBusiBrowseClick(Sender: TObject);
begin
  OpenForm(TfrmPublicBrower,frmPublicBrower,self);
  frmPublicBrower.WindowState:=wsMaximized;
end;

procedure TfrmMain.sbtnClientBrowseClick(Sender: TObject);
begin
   OpenForm(TfrmCustomer,frmCustomer,self);
   frmCustomer.WindowState:=wsMaximized;
end;

procedure TfrmMain.sbtnServiceBrowseClick(Sender: TObject);
begin
  OpenForm(TfrmServer,frmServer,self);
  frmServer.WindowState:=wsMaximized;
end;

procedure TfrmMain.sbtnSalaryBrowseClick(Sender: TObject);
begin
  OpenForm(TfrmSalary,frmSalary,self);
  frmSalary.WindowState:=wsMaximized;
end;

procedure TfrmMain.sbtnExitClick(Sender: TObject);
begin
  Application.Terminate;
end;

procedure TfrmMain.userAddClick(Sender: TObject);
begin
  OpenForm(TfrmSysmanadd,frmSysmanadd,self);
end;

procedure TfrmMain.passwdModifyClick(Sender: TObject);
begin
  OpenForm(TfrmPasschg,frmPasschg,self);
end;

procedure TfrmMain.dataBaseClick(Sender: TObject);
begin
  OpenForm(TfrmDatacontrol,frmDatacontrol,self);
end;

procedure TfrmMain.loginHistoryClick(Sender: TObject);
begin
  OpenForm(TfrmLogdaily,frmLogdaily,self);
end;

procedure TfrmMain.FormShow(Sender: TObject);
begin
   frmLogIn.ShowModal;
end;

procedure TfrmMain.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
   if MessageBox(self.Handle,'您确定真的要退出系统吗?','提示',MB_OKCANCEL+MB_DefButton2+MB_ICONINFORMATION)=idOK then
    Canclose:=True
   else
    Canclose:=False;
end;

procedure TfrmMain.Timer1Timer(Sender: TObject);
begin
  StatusBar1.Panels[0].Text:='使用者:'+DeptName+'|'+UserName+'     '+'登录时间:'+DateTimeToStr(LogInTime);
  StatusBar1.Panels[1].Text:='系统时间:'+TimeToStr(Now);
  StatusBar1.Panels[2].Text:='使用时间:'+TimeGetStamp(TimeToStr(LogInTime));
  StatusBar1.Panels[3].Text:='版权所有:南都信息网';
end;

procedure TfrmMain.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  AddLogin;
  Action := caFree;
end;

procedure TfrmMain.N1Click(Sender: TObject);
begin
  OpenForm(TfrmServerChart,frmServerChart,self);
end;

procedure TfrmMain.N2Click(Sender: TObject);
begin
 OpenForm(TfrmTotal,frmTotal,self);
end;

procedure TfrmMain.AboutClick(Sender: TObject);
begin
  OpenForm(TfrmAbout,frmAbout,self);
end;

procedure TfrmMain.ExitClick(Sender: TObject);
begin
 Application.Terminate;
end;

end.

⌨️ 快捷键说明

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