📄 clientmain.pas
字号:
unit ClientMain;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, ActnList, ImgList, ComCtrls, Buttons, ExtCtrls,
ShellAPI, MMDIBase, ToolWin, StdCtrls, StdActns, XPMenu, Sconnect, DBClient;
const
WM_USER_SHOWMAINCONTROL = WM_USER+1024;
type
TfrmClientMain = class(TForm)
StatusBar: TStatusBar;
MainMenu1: TMainMenu;
ActionList1: TActionList;
nonimagelist: TImageList;
N25: TMenuItem;
N26: TMenuItem;
N27: TMenuItem;
N28: TMenuItem;
paneltoolbar: TPanel;
paneltool: TPanel;
spbtnstandart: TSpeedButton;
Pagec: TPageControl;
PMStantard: TPopupMenu;
spbtn4: TSpeedButton;
spbtn5: TSpeedButton;
spbtn6: TSpeedButton;
spbtn1: TSpeedButton;
spbtn2: TSpeedButton;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
N21: TMenuItem;
N22: TMenuItem;
N23: TMenuItem;
N24: TMenuItem;
N30: TMenuItem;
N31: TMenuItem;
N32: TMenuItem;
N35: TMenuItem;
N36: TMenuItem;
N37: TMenuItem;
N39: TMenuItem;
N48: TMenuItem;
N55: TMenuItem;
N56: TMenuItem;
N59: TMenuItem;
N60: TMenuItem;
N62: TMenuItem;
N63: TMenuItem;
N64: TMenuItem;
N65: TMenuItem;
N66: TMenuItem;
N67: TMenuItem;
N72: TMenuItem;
N73: TMenuItem;
N74: TMenuItem;
N75: TMenuItem;
N76: TMenuItem;
N77: TMenuItem;
N78: TMenuItem;
N79: TMenuItem;
N80: TMenuItem;
N81: TMenuItem;
N82: TMenuItem;
N83: TMenuItem;
N85: TMenuItem;
XPMenu1: TXPMenu;
base1: TAction;
base2: TAction;
base3: TAction;
base4: TAction;
base5: TAction;
base6: TAction;
base7: TAction;
base9: TAction;
base10: TAction;
vipregist: TAction;
vipquery: TAction;
accountday: TAction;
receiptdetail: TAction;
paydetail: TAction;
wage1: TAction;
wage2: TAction;
rent1: TAction;
rent2: TAction;
query1: TAction;
query2: TAction;
query3: TAction;
N1: TMenuItem;
N2: TMenuItem;
N8: TMenuItem;
N11: TMenuItem;
N12: TMenuItem;
N13: TMenuItem;
N14: TMenuItem;
N15: TMenuItem;
N16: TMenuItem;
N17: TMenuItem;
N18: TMenuItem;
base8: TAction;
N19: TMenuItem;
base12: TAction;
N20: TMenuItem;
Base13: TAction;
N86: TMenuItem;
base15: TAction;
N88: TMenuItem;
N38: TMenuItem;
N40: TMenuItem;
N41: TMenuItem;
N42: TMenuItem;
N44: TMenuItem;
query7: TAction;
query8: TAction;
query9: TAction;
query10: TAction;
query11: TAction;
N46: TMenuItem;
N47: TMenuItem;
N50: TMenuItem;
N51: TMenuItem;
N52: TMenuItem;
rent3: TAction;
rent4: TAction;
rent5: TAction;
rent6: TAction;
rent7: TAction;
rent8: TAction;
rent9: TAction;
rent10: TAction;
rent11: TAction;
N61: TMenuItem;
N89: TMenuItem;
N90: TMenuItem;
N91: TMenuItem;
N92: TMenuItem;
N93: TMenuItem;
N94: TMenuItem;
N96: TMenuItem;
N97: TMenuItem;
N29: TMenuItem;
systemUser: TAction;
systemUserGroup: TAction;
systemGroupPWD: TAction;
ActionList2: TActionList;
NcreateDB: TAction;
NdeleteDB: TAction;
NbackupDB: TAction;
NrestoreDB: TAction;
NchangePWD: TAction;
Nsendmessage: TAction;
Nregister: TAction;
Nexit: TAction;
Ncalac: TAction;
Nhelp: TAction;
Lockgrid: TAction;
Unlockgrid: TAction;
CascadeW: TAction;
TileW: TAction;
ExitForm: TAction;
base11: TAction;
N33: TMenuItem;
query4: TAction;
N34: TMenuItem;
N53: TMenuItem;
financeCollect: TAction;
N43: TMenuItem;
procedure FormCreate(Sender: TObject);
procedure Action18Execute(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure NregisterExecute(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Action6Execute(Sender: TObject);
procedure NsendmessageExecute(Sender: TObject);
procedure NchangePWDExecute(Sender: TObject);
procedure NexitExecute(Sender: TObject);
procedure spbtnstandartClick(Sender: TObject);
procedure PagecChange(Sender: TObject);
procedure base5Execute(Sender: TObject);
procedure base1Execute(Sender: TObject);
procedure base8Execute(Sender: TObject);
procedure base12Execute(Sender: TObject);
procedure base6Execute(Sender: TObject);
procedure base4Execute(Sender: TObject);
procedure base3Execute(Sender: TObject);
procedure base7Execute(Sender: TObject);
procedure Base13Execute(Sender: TObject);
procedure base15Execute(Sender: TObject);
procedure base2Execute(Sender: TObject);
procedure base9Execute(Sender: TObject);
procedure base10Execute(Sender: TObject);
procedure systemUserGroupExecute(Sender: TObject);
procedure systemUserExecute(Sender: TObject);
procedure systemGroupPWDExecute(Sender: TObject);
procedure NcreateDBExecute(Sender: TObject);
procedure NdeleteDBExecute(Sender: TObject);
procedure NbackupDBExecute(Sender: TObject);
procedure NrestoreDBExecute(Sender: TObject);
procedure LockgridExecute(Sender: TObject);
procedure UnlockgridExecute(Sender: TObject);
procedure ExitFormExecute(Sender: TObject);
procedure TileWExecute(Sender: TObject);
procedure CascadeWExecute(Sender: TObject);
procedure vipregistExecute(Sender: TObject);
procedure base11Execute(Sender: TObject);
procedure rent1Execute(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure rent2Execute(Sender: TObject);
procedure rent5Execute(Sender: TObject);
procedure vipqueryExecute(Sender: TObject);
procedure rent6Execute(Sender: TObject);
procedure rent7Execute(Sender: TObject);
procedure rent8Execute(Sender: TObject);
procedure rent9Execute(Sender: TObject);
procedure rent11Execute(Sender: TObject);
procedure wage1Execute(Sender: TObject);
procedure receiptdetailExecute(Sender: TObject);
procedure paydetailExecute(Sender: TObject);
procedure accountdayExecute(Sender: TObject);
procedure financeCollectExecute(Sender: TObject);
procedure query1Execute(Sender: TObject);
procedure query2Execute(Sender: TObject);
procedure query3Execute(Sender: TObject);
procedure query7Execute(Sender: TObject);
procedure query8Execute(Sender: TObject);
procedure query9Execute(Sender: TObject);
procedure query11Execute(Sender: TObject);
procedure query4Execute(Sender: TObject);
private
BmainClose:Boolean;
BaseinfoDLLHandle:Thandle;
SystemDLLHandle:Thandle;
VIPDLLHandle:Thandle;
RentDLLHandle:Thandle;
WageDLLHandle:Thandle;
FinanceDLlHandle:Thandle;
QueryDLLHandle:Thandle;
procedure LoadBaseinfoDLL(Sender:TObject;FormName:String;DllName:String);
procedure LoadSystemDLL(Sender:TObject;FormName:String;DllName:String);
procedure LoadVIPDLL(Sender:TObject;FormName:String;DllName:String);
procedure LoadRentDLL(Sender:TObject;FormName:String;DllName:String);
procedure LoadWageDLL(Sender:TObject;FormName:String;DllName:String);
procedure LoadFinanceDLL(Sender:TObject;FormName:String;DllName:String);
procedure LoadQueryDLL(Sender:TObject;FormName:String;DllName:String);
procedure setformname(name,formName:String);
procedure delformname(name:string);
procedure GetDataFromDll(Var T:TWMCopyData);Message WM_COPYDATA;
procedure AddBottomImage;
Procedure SetAction;
{ Private declarations }
public
{ Public declarations }
end;
TDllShow =procedure (PApplication: TApplication; PForm: TForm;FormName:String;DB_Name:String;
PCn:TSocketConnection;PUsercode:String;Badmin:boolean;PCDS:TclientDataset;
ModuleID:integer;FunctionName:String;MainHandle:integer);stdcall;
var
frmClientMain: TfrmClientMain;
implementation
uses Global, Serverip, Login, dm_Client, URegister, help,
Messagesend, Changepwd, CreateDB, DeleteDB, Databasebackup,
Databaserestore;
{$R *.dfm}
procedure TfrmClientMain.FormCreate(Sender: TObject);
begin
spbtn1.Caption:='';
spbtn2.Caption:='';
spbtn4.Caption:='';
spbtn5.Caption:='';
spbtn6.Caption:='';
BmainClose:=True;
{ if (screen.width <> c_ScreenWidth) then
begin
Scaled := true;
height := longint(height) * longint(screen.height) div c_ScreenHeight;
width := longint(width) * longint(screen.width) div c_ScreenWidth;
scaleby(screen.width, c_ScreenWidth);
end;}
if not assigned(frmServerip) then
frmServerip:=TfrmServerip.Create(Application);
frmServerip.ShowModal;
if frmServerIP.ModalResult = mrOk then
Begin
if isScoketconnectionopen then
begin
if not assigned(frmlogin) then
frmlogin:=Tfrmlogin.Create(application);
frmlogin.ShowModal;
if frmlogin.ModalResult = mrok then
begin
BmainClose:=False;
if gs_UserCode<>'ADMIN' then
dmClient.CDSuserRight.Data:=GetUserRight(gs_UserID);
dmClient.Csocket.Socket.Sendtext(c_Connect+trim(gs_getComputerName));
end
else
begin
frmClientMain.Close;
application.Terminate;
end;
end
else
begin
close;
application.Terminate;
end
end
else
begin
close;
application.Terminate;
end;
end;
procedure TfrmClientMain.Action18Execute(Sender: TObject);
var
ofile:String;
hwndcalculation:hwnd;
begin
hwndcalculation:=FindWindow(nil,'CALC');
if (hwndcalculation=0) then
begin
ofile:='Calc.exe';
ShellExecute(self.Handle,'open',pchar(ofile),
nil,pchar(Extractfilepath(ofile)),sw_showNormal);
end;
end;
procedure TfrmClientMain.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
if assigned(dmClient) then
begin
if dmClient.CSocket.Socket.Connected then
begin
dmClient.CSocket.Socket.SendText(c_Close);
end;
dmclient.Free;
end;
Action:=caFree;
end;
procedure TfrmClientMain.NregisterExecute(Sender: TObject);
var
i:Integer;
begin
if MessageDlg('您确认要注销当系统吗 ?',mtWarning,[mbOK,mbCancel],0) <> mrOk then
Exit;
//闽超讽玡怠砰
for i:=0 to FrmclientMain.MDIChildCount-1 do
if frmclientMain.MDIChildren[i].ClassName <> 'TfrmMainControl' then
frmclientMain.MDIChildren[i].close;
//
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -