📄 frmdrawreportdesignmainunt.pas
字号:
unit frmDrawReportDesignMainUnt;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ToolWin, ActnMan, ActnCtrls, ActnMenus, ActnList, ImgList, ComCtrls,
Menus, StdCtrls, Tabs, ExtCtrls, EAGraphicFun_Lib, jpeg,
EAReportPmm, EAReportPmmDefining_Lib, EAReportDrawGrid_Comp, XPMan,
ExtDlgs;
type
TfrmDrawReportDesignMain = class(TForm)
ImgList: TImageList;
cbTools: TCoolBar;
sbStatus: TStatusBar;
pnlReportMain: TPanel;
scrollReport: TScrollBox;
tabPages: TTabSet;
pnlShadow: TPanel;
ActList: TActionList;
ActFile_New: TAction;
ActFile_Open: TAction;
ActFile_CloseFile: TAction;
ActFile_Save: TAction;
ActFile_SaveAs: TAction;
ActFile_ToExcel: TAction;
ActFile_ToWord: TAction;
ActFile_Print: TAction;
ActFile_Preview: TAction;
ActEdit_Undo: TAction;
ActEdit_Redo: TAction;
ActEdit_Cut: TAction;
ActEdit_Copy: TAction;
ActEdit_Paste: TAction;
ActFile_Exit: TAction;
ActEdit_Clear: TAction;
ActEdit_Find: TAction;
ActEdit_FindNext: TAction;
ActEdit_Replace: TAction;
ActTool_None: TAction;
ActTool_DrawLine: TAction;
ActTool_Erasure: TAction;
ActTool_ShowLine: TAction;
ActTool_HideLine: TAction;
ActInsert_InsertPopup: TAction;
ActInsert_Label: TAction;
ActInsert_Image: TAction;
ActInsert_Line: TAction;
ActFormat_FontSet: TAction;
ActGrid_AddGrid: TAction;
ActGrid_DeleteGrid: TAction;
ActGrid_SelectGrid: TAction;
ActGrid_MergeCell: TAction;
ActGrid_UnmergeCell: TAction;
ActGrid_AvgRow: TAction;
ActGrid_AvgCol: TAction;
ActGrid_GridProperty: TAction;
ActTool_ShowLineColor: TAction;
ActTool_HideLienColor: TAction;
ActPage_PagePopup: TAction;
ActPage_Add: TAction;
ActPage_Insert: TAction;
ActPage_Delete: TAction;
ActPage_Rename: TAction;
ActPage_BackColor: TAction;
ActPage_PageProperty: TAction;
ActHelp_Help: TAction;
ActHelp_About: TAction;
ActFrame_FramePopup: TAction;
ActFrame_AllFrame: TAction;
ActFrame_AllNull: TAction;
ActFrame_Outer: TAction;
ActFrame_Cross: TAction;
ActFrame_Left: TAction;
ActFrame_HorzCenter: TAction;
ActFrame_Right: TAction;
ActFrame_Top: TAction;
ActFrame_VertCenter: TAction;
ActFrame_Bottom: TAction;
ActFrame_ToLeftTop: TAction;
ActFrame_ToRightTop: TAction;
mmMain: TMainMenu;
N1: TMenuItem;
C1: TMenuItem;
X1: TMenuItem;
N2: TMenuItem;
O1: TMenuItem;
V1: TMenuItem;
P1: TMenuItem;
S1: TMenuItem;
A1: TMenuItem;
ExcelE1: TMenuItem;
WordW1: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
D1: TMenuItem;
C2: TMenuItem;
X2: TMenuItem;
F1: TMenuItem;
N7: TMenuItem;
V2: TMenuItem;
E1: TMenuItem;
R1: TMenuItem;
Z1: TMenuItem;
N8: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
P2: TMenuItem;
L1: TMenuItem;
L2: TMenuItem;
N11: TMenuItem;
A2: TMenuItem;
B1: TMenuItem;
D2: TMenuItem;
I1: TMenuItem;
N12: TMenuItem;
R2: TMenuItem;
N13: TMenuItem;
N14: TMenuItem;
N15: TMenuItem;
N16: TMenuItem;
N17: TMenuItem;
D3: TMenuItem;
E2: TMenuItem;
W1: TMenuItem;
H1: TMenuItem;
N18: TMenuItem;
S2: TMenuItem;
Q1: TMenuItem;
N19: TMenuItem;
N20: TMenuItem;
N21: TMenuItem;
N22: TMenuItem;
N23: TMenuItem;
N24: TMenuItem;
N25: TMenuItem;
N26: TMenuItem;
N27: TMenuItem;
N28: TMenuItem;
N29: TMenuItem;
N30: TMenuItem;
N31: TMenuItem;
N32: TMenuItem;
A3: TMenuItem;
Y1: TMenuItem;
N33: TMenuItem;
D4: TMenuItem;
G1: TMenuItem;
M1: TMenuItem;
S3: TMenuItem;
P3: TMenuItem;
N34: TMenuItem;
N35: TMenuItem;
N36: TMenuItem;
A4: TMenuItem;
H2: TMenuItem;
N37: TMenuItem;
tbCommonTool: TToolBar;
tbGridTool: TToolBar;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
ToolButton3: TToolButton;
ToolButton4: TToolButton;
ToolButton5: TToolButton;
ToolButton6: TToolButton;
ToolButton7: TToolButton;
ToolButton8: TToolButton;
ToolButton9: TToolButton;
ToolButton10: TToolButton;
ToolButton11: TToolButton;
btnTool_None: TToolButton;
btnTool_DrawLine: TToolButton;
cboReportSize: TComboBox;
btnTool_Erasure: TToolButton;
btnTool_ShowLine: TToolButton;
btnTool_HideLine: TToolButton;
btnFrame_FramePopup: TToolButton;
ToolButton21: TToolButton;
ToolButton22: TToolButton;
ToolButton23: TToolButton;
ToolButton24: TToolButton;
ToolButton25: TToolButton;
ToolButton26: TToolButton;
ToolButton27: TToolButton;
ToolButton28: TToolButton;
ToolButton30: TToolButton;
ToolButton31: TToolButton;
ToolButton32: TToolButton;
pmInsertPopup: TPopupMenu;
pmFramePopup: TPopupMenu;
pmPagePopup: TPopupMenu;
P4: TMenuItem;
L3: TMenuItem;
L4: TMenuItem;
A5: TMenuItem;
D5: TMenuItem;
I2: TMenuItem;
R3: TMenuItem;
N38: TMenuItem;
N39: TMenuItem;
N40: TMenuItem;
N41: TMenuItem;
N43: TMenuItem;
N44: TMenuItem;
N45: TMenuItem;
N46: TMenuItem;
N47: TMenuItem;
N48: TMenuItem;
N49: TMenuItem;
N50: TMenuItem;
ActView_ShowScale: TAction;
ActView_GridLine: TAction;
N42: TMenuItem;
G2: TMenuItem;
S4: TMenuItem;
ToolButton12: TToolButton;
ToolButton15: TToolButton;
ActEdit_BringToFront: TAction;
ActEdit_SendToBack: TAction;
N51: TMenuItem;
T1: TMenuItem;
B2: TMenuItem;
ActGrid_CellProperty: TAction;
U1: TMenuItem;
ActFile_PrintSetup: TAction;
U2: TMenuItem;
dlgColor: TColorDialog;
dlgSave: TSaveDialog;
dlgOpen: TOpenDialog;
N52: TMenuItem;
F3: TMenuItem;
dlgFont: TFontDialog;
ActEdit_Delete: TAction;
K1: TMenuItem;
N53: TMenuItem;
pmReport: TPopupMenu;
D6: TMenuItem;
C3: TMenuItem;
X3: TMenuItem;
K2: TMenuItem;
V3: TMenuItem;
B3: TMenuItem;
T2: TMenuItem;
N54: TMenuItem;
N55: TMenuItem;
tbSetupTool: TToolBar;
ToolButton16: TToolButton;
ToolButton20: TToolButton;
ActFormat_AlignTL: TAction;
ActFormat_AlignTC: TAction;
ActFormat_AlignTR: TAction;
ActFormat_AlignCL: TAction;
ActFormat_AlignCC: TAction;
ActFormat_AlignCR: TAction;
ActFormat_AlignBL: TAction;
ActFormat_AlignBC: TAction;
ActFormat_AlignBR: TAction;
ActFormat_BackColor: TAction;
ActFormat_Align: TAction;
ToolButton34: TToolButton;
pmAlign: TPopupMenu;
ActFormatAlignBC1: TMenuItem;
ActFormatAlignBL1: TMenuItem;
ActFormatAlignBR1: TMenuItem;
ActFormatAlignCC1: TMenuItem;
ActFormatAlignCL1: TMenuItem;
ActFormatAlignCR1: TMenuItem;
ActFormatAlignTC1: TMenuItem;
ActFormatAlignTL1: TMenuItem;
ActFormatAlignTR1: TMenuItem;
A6: TMenuItem;
N56: TMenuItem;
N57: TMenuItem;
N58: TMenuItem;
N59: TMenuItem;
N60: TMenuItem;
N61: TMenuItem;
N62: TMenuItem;
N63: TMenuItem;
N64: TMenuItem;
K3: TMenuItem;
ToolButton29: TToolButton;
ActFormat_Image: TAction;
I3: TMenuItem;
N65: TMenuItem;
ActFormat_AlignImage: TAction;
O3: TMenuItem;
dlgOpenPicture: TOpenPictureDialog;
ActFormat_AlignImageNone: TAction;
ActFormat_AlignImageClient: TAction;
ActFormat_AlignImageAuto: TAction;
N66: TMenuItem;
N67: TMenuItem;
N68: TMenuItem;
drReport: TEAReportPmm;
btnInsert_Label: TToolButton;
btnInsert_Image: TToolButton;
ToolButton36: TToolButton;
ToolButton37: TToolButton;
ToolButton13: TToolButton;
procedure ActFile_NewExecute(Sender: TObject);
procedure ActFile_OpenExecute(Sender: TObject);
procedure ActPage_PagePopupExecute(Sender: TObject);
procedure ActInsert_InsertPopupExecute(Sender: TObject);
procedure scrollReportResize(Sender: TObject);
procedure ActGrid_AddGridExecute(Sender: TObject);
procedure ActTool_DrawLineExecute(Sender: TObject);
procedure ActTool_NoneExecute(Sender: TObject);
procedure ActTool_ErasureExecute(Sender: TObject);
procedure ActTool_ShowLineExecute(Sender: TObject);
procedure ActTool_HideLineExecute(Sender: TObject);
procedure ActFrame_FramePopupExecute(Sender: TObject);
procedure ActEdit_FindExecute(Sender: TObject);
procedure ActEdit_ReplaceExecute(Sender: TObject);
procedure ActFrame_AllFrameExecute(Sender: TObject);
procedure ActFrame_AllNullExecute(Sender: TObject);
procedure ActFrame_OuterExecute(Sender: TObject);
procedure ActFrame_CrossExecute(Sender: TObject);
procedure ActFrame_LeftExecute(Sender: TObject);
procedure ActFrame_HorzCenterExecute(Sender: TObject);
procedure ActFrame_RightExecute(Sender: TObject);
procedure ActFrame_TopExecute(Sender: TObject);
procedure ActFrame_VertCenterExecute(Sender: TObject);
procedure ActFrame_BottomExecute(Sender: TObject);
procedure ActFrame_ToLeftTopExecute(Sender: TObject);
procedure ActFrame_ToRightTopExecute(Sender: TObject);
procedure ActInsert_LabelExecute(Sender: TObject);
procedure ActFile_ExitExecute(Sender: TObject);
procedure ActView_GridLineExecute(Sender: TObject);
procedure ActGrid_CellPropertyExecute(Sender: TObject);
procedure cboReportSizeChange(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure ActFile_PrintSetupExecute(Sender: TObject);
procedure ActFile_PrintExecute(Sender: TObject);
procedure ActFile_PreviewExecute(Sender: TObject);
procedure ActPage_AddExecute(Sender: TObject);
procedure tabPagesChange(Sender: TObject; NewTab: Integer;
var AllowChange: Boolean);
procedure ActPage_InsertExecute(Sender: TObject);
procedure ActPage_DeleteExecute(Sender: TObject);
procedure ActPage_RenameExecute(Sender: TObject);
procedure ActPage_BackColorExecute(Sender: TObject);
procedure ActPage_PagePropertyExecute(Sender: TObject);
procedure ActHelp_AboutExecute(Sender: TObject);
procedure ActFile_SaveExecute(Sender: TObject);
procedure ActFile_CloseFileExecute(Sender: TObject);
procedure ActFile_SaveAsExecute(Sender: TObject);
procedure ActListUpdate(Action: TBasicAction; var Handled: Boolean);
procedure ActEdit_UndoExecute(Sender: TObject);
procedure ActEdit_RedoExecute(Sender: TObject);
procedure ActFormat_FontSetExecute(Sender: TObject);
procedure ActEdit_DeleteExecute(Sender: TObject);
procedure ActEdit_CutExecute(Sender: TObject);
procedure ActEdit_CopyExecute(Sender: TObject);
procedure ActEdit_PasteExecute(Sender: TObject);
procedure ActEdit_ClearExecute(Sender: TObject);
procedure ActGrid_DeleteGridExecute(Sender: TObject);
procedure ActEdit_BringToFrontExecute(Sender: TObject);
procedure ActEdit_SendToBackExecute(Sender: TObject);
procedure ActFormat_AlignExecute(Sender: TObject);
procedure ActFormat_BackColorExecute(Sender: TObject);
procedure ActFormat_AlignTLExecute(Sender: TObject);
procedure ActFormat_AlignTCExecute(Sender: TObject);
procedure ActFormat_AlignTRExecute(Sender: TObject);
procedure ActFormat_AlignCLExecute(Sender: TObject);
procedure ActFormat_AlignCCExecute(Sender: TObject);
procedure ActFormat_AlignCRExecute(Sender: TObject);
procedure ActFormat_AlignBLExecute(Sender: TObject);
procedure ActFormat_AlignBCExecute(Sender: TObject);
procedure ActFormat_AlignBRExecute(Sender: TObject);
procedure drReportMouseWheel(Sender: TObject; Shift: TShiftState;
WheelDelta: Integer; MousePos: TPoint);
procedure drReportButtonClick(Sender, ASelectedObj: TObject;
AObjType: TEASelectedObjectType);
procedure ActInsert_ImageExecute(Sender: TObject);
procedure ActFormat_ImageExecute(Sender: TObject);
procedure ActFormat_AlignImageExecute(Sender: TObject);
procedure ActFormat_AlignImageNoneExecute(Sender: TObject);
procedure ActFormat_AlignImageClientExecute(Sender: TObject);
procedure ActFormat_AlignImageAutoExecute(Sender: TObject);
procedure ActInsert_LineExecute(Sender: TObject);
private
procedure InitData;
procedure ClearData;
procedure AdjustDrawReportPos;
procedure LoadReportSizeToList;
procedure SetupAllDrawGridTool(ADrawGridTool: TEAReportDrawGridTool);
procedure SetupAllDrawGridFrame(AGridFrames: TEAGridFrames);
procedure SetupTextAlign(AHorz: TEAHorzPos; AVert: TEAVertPos);
procedure SetupImageAlign(AImageAlign: TEAImageAlign);
function IsNotRepeatPageName(const AName: string; AOldPageIndex: Integer): Boolean;
function GetNewPageName: string;
public
{ Public declarations }
end;
procedure ShowDrawReportDesignMainForm;
var
frmDrawReportDesignMain: TfrmDrawReportDesignMain;
implementation
uses
EAReportLabel_Comp, EAReportImage_Comp, EAReportLine_Comp, EASysUtils,
frmDrawReportDesignAddGridUnt, frmDrawReportDesignFindReplaceUnt,
frmDrawGridCellSetupUnt, frmEAPubInputUnt;
{$R *.dfm}
const
cSPageImg = 47;
cSTitleStr = 'EAReportPmm';
procedure ShowDrawReportDesignMainForm;
begin
Application.CreateForm(TfrmDrawReportDesignMain, frmDrawReportDesignMain);
with frmDrawReportDesignMain do
try
InitData;
ShowModal;
finally
ClearData;
Free;
end;
frmDrawReportDesignMain := nil;
end;
procedure TfrmDrawReportDesignMain.ActFile_NewExecute(Sender: TObject);
begin
//
end;
procedure TfrmDrawReportDesignMain.ActFile_OpenExecute(Sender: TObject);
var
I, vViewScale: Integer;
B: Boolean;
begin
if not dlgOpen.Execute then
Exit;
B := drReport.SaveDataInfo;
drReport.Store.StopStore := True;
drReport.LoadFromFile(dlgOpen.FileName);
drReport.Store.Clear;
tabPages.Tabs.BeginUpdate;
tabPages.Tabs.Clear;
for I := 0 to drReport.Pages.Count - 1 do
tabPages.Tabs.Add(drReport.Pages[I].Name);
if drReport.Pages.Count > 0 then
begin
tabPages.TabIndex := drReport.PageIndex;
end
else begin
drReport.Pages.Add('第 1 页');
end;
for I := 0 to cboReportSize.Items.Count - 1 do
begin
vViewScale := Integer(cboReportSize.Items.Objects[I]);
if vViewScale = drReport.ViewScale then
begin
cboReportSize.ItemIndex := I;
Break;
end;
if I = cboReportSize.Items.Count - 1 then
begin
cboReportSize.Items.Objects[I] := TObject(drReport.ViewScale);
cboReportSize.ItemIndex := I;
Break;
end;
end;
drReport.SaveDataInfo := B;
drReport.Store.StopStore := False;
tabPages.Tabs.EndUpdate;
Self.Caption := cSTitleStr + '[' + dlgOpen.FileName + ']';
end;
procedure TfrmDrawReportDesignMain.ActPage_PagePopupExecute(
Sender: TObject);
begin
//
end;
procedure TfrmDrawReportDesignMain.ActInsert_InsertPopupExecute(
Sender: TObject);
begin
//
end;
procedure TfrmDrawReportDesignMain.ClearData;
begin
end;
procedure TfrmDrawReportDesignMain.InitData;
begin
drReport.Left := 20;
drReport.Top := 20;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -