📄 mainfrm.pas.svn-base
字号:
unit MainFrm;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, TBX, TB2Item, TB2Dock, TB2Toolbar, TBXSwitcher, Menus,
ImgList, SpTBXItem, ActnList, TBXDkPanels, TBXStatusBars, systemPH,
ComCtrls;
type
TOperateMode = (omNone, omDoApply, omAgentLQ, omViewTicket, omStoreTicket, omDisTicket, omStatics);
TFormMain = class(TForm)
TBImageList1: TTBImageList;
TBXToolbar1: TTBXToolbar;
TBXSubmenuItem1: TTBXSubmenuItem;
ActionList1: TActionList;
TBXSubmenuItem3: TTBXSubmenuItem;
TBXSubmenuItem4: TTBXSubmenuItem;
TBXSubmenuItem5: TTBXSubmenuItem;
TBXItem1: TTBXItem;
TBXItem2: TTBXItem;
TBXSeparatorItem1: TTBXSeparatorItem;
TBXItem3: TTBXItem;
TBXDock1: TTBXDock;
TBXToolbar2: TTBXToolbar;
TBXItem4: TTBXItem;
TBXItem5: TTBXItem;
bxStb: TTBXStatusBar;
PnlControl: TTBXDockablePanel;
TBXItem6: TTBXItem;
TBXItem7: TTBXItem;
TBXItem9: TTBXItem;
actDoApply: TAction;
acInputTicket: TAction;
acAgentLQ: TAction;
acDisTickets: TAction;
acSatistics: TAction;
acExit: TAction;
acEdtPwd: TAction;
acReLogin: TAction;
TBXItem8: TTBXItem;
acViewTicket: TAction;
TBXItem10: TTBXItem;
TBXItem11: TTBXItem;
TBXItem12: TTBXItem;
TBXItem13: TTBXItem;
TBXSeparatorItem2: TTBXSeparatorItem;
acHelp: TAction;
acAbout: TAction;
TBXItem14: TTBXItem;
TBXSeparatorItem3: TTBXSeparatorItem;
TBXItem15: TTBXItem;
TBXItem16: TTBXItem;
TBXItem17: TTBXItem;
TBXItem18: TTBXItem;
TBXSwitcher1: TTBXSwitcher;
TBXSeparatorItem4: TTBXSeparatorItem;
pb: TProgressBar;
TBXItem19: TTBXItem;
TBXItem20: TTBXItem;
procedure acAgentLQExecute(Sender: TObject);
procedure acDisTicketsExecute(Sender: TObject);
procedure acSatisticsExecute(Sender: TObject);
procedure acExitExecute(Sender: TObject);
procedure acEdtPwdExecute(Sender: TObject);
procedure acReLoginExecute(Sender: TObject);
procedure TBXItem8Click(Sender: TObject);
procedure acViewTicketExecute(Sender: TObject);
procedure actDoApplyExecute(Sender: TObject);
procedure acInputTicketExecute(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
procedure FormCreate(Sender: TObject);
procedure StaticsOnClick(Sender: TObject);
private
{ Private declarations }
FCurOperateMode: TOperateMode;
procedure UpdateApplyCaption(ACaption: string; AOperateMode: TOperateMode);
procedure WMDoStatusChange(var Message: TMessage); message WM_STATUS_MSG;
public
{ Public declarations }
end;
var
FormMain: TFormMain;
implementation
uses
DisTicketFrm, ViewTicketsFrm, DoApplyFrm, AgentLQFrm, StoreTickets, StaticsFrm;
{$R *.dfm}
var
FFormDisTicket: TFormDisTickets;
FFormViewTickets: TFormViewTicket;
FFormDoApply: TFormDoApply;
FFormAgentLQ: TFormAgentLQ;
FFormStoreTickets: TFormStoreTicket;
FFormStatics: TFormStatics;
procedure TFormMain.acAgentLQExecute(Sender: TObject);
begin
if not Assigned(FFormAgentLQ) then
begin
FFormAgentLQ := TFormAgentLQ.Create(PnlControl);
with FFormAgentLQ do
begin
Parent := PnlControl;
Align := alClient;
BorderStyle := bsNone;
Color := clAppWorkSpace;
Visible := True;
BringToFront;
end;
end
else begin
FFormAgentLQ.InitComponentEditInfo;
FFormAgentLQ.BringToFront;
end;
UpdateApplyCaption(FFormAgentLQ.Caption, omAgentLQ);
end;
procedure TFormMain.acDisTicketsExecute(Sender: TObject);
begin
if not Assigned(FFormDisTicket) then
begin
FFormDisTicket := TFormDisTickets.Create(PnlControl);
with FFormDisTicket do
begin
Parent := PnlControl;
Align := alClient;
BorderStyle := bsNone;
Color := clAppWorkSpace;
Visible := True;
BringToFront;
end;
end
else
FFormDisTicket.BringToFront;
UpdateApplyCaption(FFormDisTicket.Caption, omDisTicket);
end;
procedure TFormMain.acSatisticsExecute(Sender: TObject);
begin
if not Assigned(FFormStatics) then
begin
FFormStatics := TFormStatics.Create(PnlControl);
with FFormStatics do
begin
Parent := PnlControl;
Align := alClient;
BorderStyle := bsNone;
Color := clAppWorkSpace;
Visible := True;
BringToFront;
end;
end
else
FFormStatics.BringToFront;
UpdateApplyCaption(FFormStatics.Caption, omStatics);
end;
procedure TFormMain.acExitExecute(Sender: TObject);
begin
Close;
end;
procedure TFormMain.acEdtPwdExecute(Sender: TObject);
begin
//
end;
procedure TFormMain.acReLoginExecute(Sender: TObject);
begin
//
end;
procedure TFormMain.TBXItem8Click(Sender: TObject);
begin
//
end;
procedure TFormMain.acViewTicketExecute(Sender: TObject);
begin
if not Assigned(FFormViewTickets) then
begin
FFormViewTickets := TFormViewTicket.Create(PnlControl);
with FFormViewTickets do
begin
Parent := PnlControl;
Align := alClient;
BorderStyle := bsNone;
Color := clAppWorkSpace;
Visible := True;
BringToFront;
end;
end
else
FFormViewTickets.BringToFront;
UpdateApplyCaption(FFormViewTickets.Caption, omViewTicket);
end;
procedure TFormMain.actDoApplyExecute(Sender: TObject);
begin
if not Assigned(FFormDoApply) then
begin
FFormDoApply := TFormDoApply.Create(PnlControl, FFormDoApply);
with FFormDoApply do
begin
Parent := PnlControl;
Align := alClient;
BorderStyle := bsNone;
Color := clAppWorkSpace;
Visible := True;
BringToFront;
end;
TFormDoApply.InitDoApplyData(FFormDoApply);
end
else
FFormDoApply.BringToFront;
UpdateApplyCaption(FFormDoApply.Caption, omDoApply);
end;
procedure TFormMain.acInputTicketExecute(Sender: TObject);
begin
if not Assigned(FFormStoreTickets) then
begin
FFormStoreTickets := TFormStoreTicket.Create(PnlControl);
with FFormStoreTickets do
begin
Parent := PnlControl;
Align := alClient;
BorderStyle := bsNone;
Color := clAppWorkSpace;
Visible := True;
BringToFront;
end;
end
else
FFormStoreTickets.BringToFront;
UpdateApplyCaption(FFormStoreTickets.Caption, omStoreTicket);
end;
procedure TFormMain.UpdateApplyCaption(ACaption: string; AOperateMode: TOperateMode);
begin
Caption := SystemConst_AppExplain + ' - [' + ACaption + ']';
if FCurOperateMode <> AOperateMode then
begin
FCurOperateMode := AOperateMode;
bxStb.Panels[0].Caption := '';
end;
end;
procedure TFormMain.FormDestroy(Sender: TObject);
begin
if Assigned(FFormViewTickets) then FreeAndNil(FFormViewTickets);
if Assigned(FFormStoreTickets) then FreeAndNil(FFormStoreTickets);
if Assigned(FFormDisTicket) then FreeAndNil(FFormDisTicket);
if Assigned(FFormDoApply) then FreeAndNil(FFormDoApply);
if Assigned(FFormAgentLQ) then FreeAndNil(FFormAgentLQ);
end;
procedure TFormMain.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
if Application.MessageBox('确定退出系统?', '提示', MB_OKCANCEL+MB_ICONINFORMATION) = IDOK then
CanClose := True
else
CanClose := False;
end;
procedure TFormMain.FormCreate(Sender: TObject);
begin
Caption := SystemConst_AppExplain;
FCurOperateMode := omNone;
end;
procedure TFormMain.WMDoStatusChange(var Message: TMessage);
var
nPosition: Integer;
begin
if Message.Msg = WM_STATUS_MSG then
begin
case Message.WParam of
DEF_START_UPDATE:
begin
bxStb.Panels[0].Caption := '加载数据中,请稍候......';
pb.Max := Message.LParam;
pb.Visible := True;
pb.Position := 0;
end;
DEF_PLAYING_UPDATE:
begin
nPosition := Message.LParam;
if nPosition <= pb.Max then
pb.Position := nPosition;
end;
DEF_FINISHED_UPDATE:
begin
bxStb.Panels[0].Caption := '';
pb.Visible := False;
end;
DEF_RECORDCOUNT:
begin
bxStb.Panels[0].Caption := '总共记录数:' + IntToStr(Message.LParam);
pb.Visible := False;
end;
end;
end;
end;
procedure TFormMain.StaticsOnClick(Sender: TObject);
begin
if not (Sender is TTBXItem)then Exit;
acSatistics.Execute;
SendMessage(FFormStatics.Handle, WM_STATICS_MSG, TTBXItem(Sender).Tag, 0);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -