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

📄 frmmainunit.pas

📁 delphi 运行期间窗体设计
💻 PAS
📖 第 1 页 / 共 2 页
字号:
unit frmMainUnit;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Menus, ActnList, DB, DBTables, StdCtrls, Buttons, ExtCtrls,
  QuickRpt, QRCtrls, ImgList, ComCtrls, ToolWin, StdActns, LmdDsgDesigner;

type
  TfrmMain = class(TForm)
    ActionList1: TActionList;
    MainMenu1: TMainMenu;
    actNew: TAction;
    New1: TMenuItem;
    New2: TMenuItem;
    Panel1: TPanel;
    SpeedButton1: TSpeedButton;
    SpeedButton2: TSpeedButton;
    SpeedButton3: TSpeedButton;
    SpeedButton5: TSpeedButton;
    SpeedButton6: TSpeedButton;
    SpeedButton7: TSpeedButton;
    SpeedButton8: TSpeedButton;
    SpeedButton9: TSpeedButton;
    SpeedButton10: TSpeedButton;
    actPreview: TAction;
    Report1: TMenuItem;
    actPreview1: TMenuItem;
    actPropsView: TAction;
    View1: TMenuItem;
    Properties1: TMenuItem;
    SaveDialog1: TSaveDialog;
    actSave: TAction;
    actSaveAs: TAction;
    actOpen: TAction;
    OpenDialog1: TOpenDialog;
    actCloseAll: TAction;
    Open1: TMenuItem;
    Save1: TMenuItem;
    SaveAs1: TMenuItem;
    Closeall1: TMenuItem;
    actClose: TAction;
    Close1: TMenuItem;
    ControlBar1: TControlBar;
    ToolBar1: TToolBar;
    ToolButton1: TToolButton;
    ToolButton2: TToolButton;
    ToolButton3: TToolButton;
    ToolButton4: TToolButton;
    ImageList1: TImageList;
    actSaveSaveAll: TAction;
    actCopy: TAction;
    actCut: TAction;
    actPaste: TAction;
    ToolButton5: TToolButton;
    ToolButton6: TToolButton;
    ToolButton7: TToolButton;
    Edit1: TMenuItem;
    Copy1: TMenuItem;
    Cut1: TMenuItem;
    Paste1: TMenuItem;
    N1: TMenuItem;
    Close2: TMenuItem;
    PopupMenu1: TPopupMenu;
    Copy2: TMenuItem;
    Cut2: TMenuItem;
    Paste2: TMenuItem;
    N2: TMenuItem;
    actDelete: TAction;
    N3: TMenuItem;
    Delete1: TMenuItem;
    Delete2: TMenuItem;
    actLock: TAction;
    Lock1: TMenuItem;
    Lock2: TMenuItem;
    actUnlock: TAction;
    actUnlock1: TMenuItem;
    Unlock1: TMenuItem;
    ToolButton8: TToolButton;
    ToolButton9: TToolButton;
    ToolButton10: TToolButton;
    ToolButton11: TToolButton;
    ToolButton12: TToolButton;
    ToolButton13: TToolButton;
    actUnlockAll: TAction;
    UnlockAll1: TMenuItem;
    actSelectAll: TAction;
    actSelectAll1: TMenuItem;
    actAlignToGrid: TAction;
    actAlignToGrid1: TMenuItem;
    AlignToGrid1: TMenuItem;
    actBringToFront: TAction;
    actSendToBack: TAction;
    N5: TMenuItem;
    AlignToGrid2: TMenuItem;
    Sendtoback1: TMenuItem;
    Bringtofront1: TMenuItem;
    Sendtoback2: TMenuItem;
    N6: TMenuItem;
    ToolButton14: TToolButton;
    ToolButton15: TToolButton;
    ToolButton16: TToolButton;
    ToolButton17: TToolButton;
    WindowCascade1: TWindowCascade;
    WindowTileHorizontal1: TWindowTileHorizontal;
    WindowTileVertical1: TWindowTileVertical;
    WindowMinimizeAll1: TWindowMinimizeAll;
    WindowArrange1: TWindowArrange;
    Window1: TMenuItem;
    Arrange1: TMenuItem;
    Cascade1: TMenuItem;
    MinimizeAll1: TMenuItem;
    ileHorizontally1: TMenuItem;
    ileVertically1: TMenuItem;
    actEnabled: TAction;
    actEnable1: TMenuItem;
    Enable1: TMenuItem;
    actEnableAll: TAction;
    EnableAll1: TMenuItem;
    N7: TMenuItem;
    N8: TMenuItem;
    actChangeData: TAction;
    Changedata1: TMenuItem;
    ToolButton18: TToolButton;
    ComboBox1: TComboBox;
    actZoom100: TAction;
    Zoomto1001: TMenuItem;
    actPrint: TAction;
    Print1: TMenuItem;
    N4: TMenuItem;
    ToolButton19: TToolButton;
    ToolButton20: TToolButton;
    ToolButton21: TToolButton;
    ToolBar2: TToolBar;
    actALLeft: TAction;
    actALRight: TAction;
    actALTop: TAction;
    actALBottom: TAction;
    actALHSpace: TAction;
    actALVSpace: TAction;
    actALHCenter: TAction;
    actALVCenter: TAction;
    actALHCenterWindow: TAction;
    actALVCenterWindow: TAction;
    ToolButton22: TToolButton;
    ToolButton23: TToolButton;
    ToolButton24: TToolButton;
    ToolButton25: TToolButton;
    ToolButton26: TToolButton;
    ToolButton27: TToolButton;
    ToolButton28: TToolButton;
    ToolButton29: TToolButton;
    ToolButton30: TToolButton;
    ToolButton31: TToolButton;
    ToolButton32: TToolButton;
    Align1: TMenuItem;
    actALLeft1: TMenuItem;
    actALRight1: TMenuItem;
    actALHSpace1: TMenuItem;
    actALHCenter1: TMenuItem;
    actALHCenterWindow1: TMenuItem;
    N9: TMenuItem;
    actALTop1: TMenuItem;
    actALBottom1: TMenuItem;
    actALVSpace1: TMenuItem;
    actALVCenter1: TMenuItem;
    actALVCenterWindow1: TMenuItem;
    Align2: TMenuItem;
    actALLeft2: TMenuItem;
    actALRight2: TMenuItem;
    actALHSpace2: TMenuItem;
    actALHCenter2: TMenuItem;
    actALHCenterWindow2: TMenuItem;
    N10: TMenuItem;
    actALTop2: TMenuItem;
    actALBottom2: TMenuItem;
    actALVSpace2: TMenuItem;
    actALVCenter2: TMenuItem;
    actALVCenterWindow2: TMenuItem;
    actRepProps: TAction;
    actRepProps1: TMenuItem;
    procedure actNewExecute(Sender: TObject);
    procedure actPreviewExecute(Sender: TObject);
    procedure actPreviewUpdate(Sender: TObject);
    procedure actPropsViewExecute(Sender: TObject);
    procedure actPropsViewUpdate(Sender: TObject);
    procedure actOpenExecute(Sender: TObject);
    procedure actSaveExecute(Sender: TObject);
    procedure actSaveUpdate(Sender: TObject);
    procedure actSaveAsUpdate(Sender: TObject);
    procedure actSaveAsExecute(Sender: TObject);
    procedure actCloseAllUpdate(Sender: TObject);
    procedure actCloseAllExecute(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure actCloseUpdate(Sender: TObject);
    procedure actCloseExecute(Sender: TObject);
    procedure actSaveSaveAllUpdate(Sender: TObject);
    procedure actSaveSaveAllExecute(Sender: TObject);
    procedure actCopyUpdate(Sender: TObject);
    procedure actCutUpdate(Sender: TObject);
    procedure actPasteUpdate(Sender: TObject);
    procedure actCopyExecute(Sender: TObject);
    procedure actCutExecute(Sender: TObject);
    procedure actPasteExecute(Sender: TObject);
    procedure actDeleteExecute(Sender: TObject);
    procedure actDeleteUpdate(Sender: TObject);
    procedure actLockUpdate(Sender: TObject);
    procedure actLockExecute(Sender: TObject);
    procedure actUnlockUpdate(Sender: TObject);
    procedure actUnlockExecute(Sender: TObject);
    procedure actUnlockAllUpdate(Sender: TObject);
    procedure actUnlockAllExecute(Sender: TObject);
    procedure actSelectAllUpdate(Sender: TObject);
    procedure actSelectAllExecute(Sender: TObject);
    procedure actAlignToGridUpdate(Sender: TObject);
    procedure actAlignToGridExecute(Sender: TObject);
    procedure actBringToFrontUpdate(Sender: TObject);
    procedure actSendToBackUpdate(Sender: TObject);
    procedure actBringToFrontExecute(Sender: TObject);
    procedure actSendToBackExecute(Sender: TObject);
    procedure actEnabledUpdate(Sender: TObject);
    procedure actEnabledExecute(Sender: TObject);
    procedure actEnableAllUpdate(Sender: TObject);
    procedure actEnableAllExecute(Sender: TObject);
    procedure actChangeDataUpdate(Sender: TObject);
    procedure actChangeDataExecute(Sender: TObject);
    procedure Close2Click(Sender: TObject);
    procedure ComboBox1Change(Sender: TObject);
    procedure actZoom100Update(Sender: TObject);
    procedure actZoom100Execute(Sender: TObject);
    procedure actPrintUpdate(Sender: TObject);
    procedure actPrintExecute(Sender: TObject);
    procedure actALLeftUpdate(Sender: TObject);
    procedure actALLeftExecute(Sender: TObject);
    procedure actRepPropsUpdate(Sender: TObject);
    procedure actRepPropsExecute(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure Save(ADoc: TForm);
    function SaveAs(ADoc: TForm): Boolean;
    function CloseAll: Boolean;
    procedure ComponentInserting(var AComponentClass: TComponentClass);
    procedure ComponentInserted;
    procedure UpdateZoomComboBox(AClosingForm: Boolean);
  end;

var
  frmMain: TfrmMain;

implementation

uses dlgDataUnit, frmDocUnit, frmPropsUnit, dlgReportPropsUnit;

{$R *.dfm}

procedure TfrmMain.actNewExecute(Sender: TObject);
var
  LDataSet: TBDEDataSet;
  LForm: TfrmDoc;
begin
  LForm := TfrmDoc.Create(Application);
  if dlgData.Execute(LDataSet, LForm) then
    LForm.DataSet := LDataset
  else
    LForm.Free;
end;

procedure TfrmMain.ComponentInserted;
begin
  SpeedButton1.Down := True;
end;

procedure TfrmMain.ComponentInserting(var AComponentClass: TComponentClass);
begin
  if SpeedButton10.Down then
    AComponentClass := TQRBand
  else if SpeedButton2.Down then
    AComponentClass := TQRLabel
  else if SpeedButton3.Down then
    AComponentClass := TQRDBText
  else if SpeedButton5.Down then
    AComponentClass := TQRExpr
  else if SpeedButton6.Down then
    AComponentClass := TQRSysData
  else if SpeedButton7.Down then
    AComponentClass := TQRMemo
  else if SpeedButton8.Down then
    AComponentClass := TQRExprMemo
  else if SpeedButton9.Down then
    AComponentClass := TQRShape;
end;

procedure TfrmMain.actPreviewExecute(Sender: TObject);
var
  LV: Boolean;
begin
  LV := frmProps.Visible;
  frmProps.Visible := False;
  try
    TfrmDoc(ActiveMDIChild).DataSet.Open;
    TfrmDoc(ActiveMDIChild).Report.PreviewModal;
  finally
    frmProps.Visible := LV;
  end;
end;

procedure TfrmMain.actPreviewUpdate(Sender: TObject);
begin
  actPreview.Enabled := (ActiveMDIChild <> nil);
end;

procedure TfrmMain.actPropsViewExecute(Sender: TObject);
begin
  frmProps.Visible := not frmProps.Visible;
end;

procedure TfrmMain.actPropsViewUpdate(Sender: TObject);
begin
  actPropsView.Checked := frmProps.Visible;
end;

procedure TfrmMain.Save(ADoc: TForm);
begin
  TfrmDoc(ADoc).Save;
end;

function TfrmMain.SaveAs(ADoc: TForm): Boolean;
var
  LS: string;
begin
  if TfrmDoc(ADoc).FileName <> '' then
    LS := TfrmDoc(ADoc).FileName
  else
    LS := TfrmDoc(ADoc).Caption;
  SaveDialog1.FileName := LS;
  Result := SaveDialog1.Execute;
  if Result then TfrmDoc(ADoc).SaveAs(SaveDialog1.FileName);
end;

procedure TfrmMain.actOpenExecute(Sender: TObject);
begin
  if OpenDialog1.Execute then
    TfrmDoc.CreateDocument(Application, OpenDialog1.FileName);
end;

procedure TfrmMain.actSaveExecute(Sender: TObject);
begin
  Save(ActiveMDIChild);
end;

procedure TfrmMain.actSaveUpdate(Sender: TObject);
begin
  actSave.Enabled := (ActiveMDIChild <> nil) and
    (TfrmDoc(ActiveMDIChild).Modified) and (TfrmDoc(ActiveMDIChild).FileName <> '');
end;

procedure TfrmMain.actSaveAsUpdate(Sender: TObject);
begin

⌨️ 快捷键说明

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