Main.pas
上传用户:hylc_2004
上传日期:2014-01-23
资源大小:46800k
文件大小:3k
源码类别:

Delphi控件源码

开发平台:

Delphi

  1. unit Main;
  2. interface
  3. uses Windows, SysUtils, Classes, Graphics, Forms, Controls, Menus,
  4.   StdCtrls, Dialogs, Buttons, Messages, ExtCtrls, ComCtrls,
  5.   ToolWin, fcClearPanel, fcButtonGroup, fcButton,
  6.   fcShapeBtn, fcImgBtn, fcImager, fcLabel
  7.   {$ifndef ver100}
  8.   , ImgList
  9.   {$endif};
  10. type
  11.   TMainMdiForm = class(TForm)
  12.     MainMenu1: TMainMenu;
  13.     File1: TMenuItem;
  14.     FileNewItem: TMenuItem;
  15.     FileCloseItem: TMenuItem;
  16.     Window1: TMenuItem;
  17.     N1: TMenuItem;
  18.     FileExitItem: TMenuItem;
  19.     WindowCascadeItem: TMenuItem;
  20.     WindowTileItem: TMenuItem;
  21.     OpenDialog: TOpenDialog;
  22.     StatusBar: TStatusBar;
  23.     ToolBar2: TToolBar;
  24.     ToolButton3: TToolButton;
  25.     ToolButton9: TToolButton;
  26.     ToolButton8: TToolButton;
  27.     ToolButton10: TToolButton;
  28.     ImageList1: TImageList;
  29.     fcButtonGroup1: TfcButtonGroup;
  30.     procedure FileNew1Execute(Sender: TObject);
  31.     procedure FileOpen1Execute(Sender: TObject);
  32.     procedure FileExit1Execute(Sender: TObject);
  33.     procedure fcButtonGroup1Change(ButtonGroup: TfcCustomButtonGroup;
  34.       OldSelected, Selected: TfcButtonGroupItem);
  35.     procedure FormActivate(Sender: TObject);
  36.     procedure WindowTileItemClick(Sender: TObject);
  37.     procedure WindowCascadeItemClick(Sender: TObject);
  38.     procedure FileCloseItemClick(Sender: TObject);
  39.   private
  40.     { Private declarations }
  41.     procedure CreateMDIChild(const Name: string);
  42.     procedure SetMDIChildCaption(Child: TCustomForm; Name: string);
  43.   public
  44.     { Public declarations }
  45.   end;
  46. var
  47.   MainMdiForm: TMainMdiForm;
  48. implementation
  49. {$R *.DFM}
  50. uses ChildWin;
  51. procedure TMainMdiForm.SetMDIChildCaption(Child: TCustomForm; Name: string);
  52. begin
  53.   Child.Caption := Name;
  54.   TfcShapeBtn(fcButtonGroup1.ButtonItems.FindPointerTag(Child).Button).Caption := Name;
  55. end;
  56. procedure TMainMdiForm.CreateMDIChild(const Name: string);
  57. var
  58.   Child: TMDIChild;
  59. begin
  60.   { create a new MDI child window }
  61.   Child := TMDIChild.Create(Application);
  62.   SetMDIChildCaption(Child, Name);
  63. end;
  64. procedure TMainMdiForm.FileNew1Execute(Sender: TObject);
  65. begin
  66.   CreateMDIChild('FORM' + IntToStr(MDIChildCount + 1));
  67. end;
  68. procedure TMainMdiForm.FileOpen1Execute(Sender: TObject);
  69. begin
  70.   if OpenDialog.Execute then
  71.     CreateMDIChild(OpenDialog.FileName);
  72. end;
  73. procedure TMainMdiForm.FileExit1Execute(Sender: TObject);
  74. begin
  75.   Close;
  76. end;
  77. procedure TMainMdiForm.fcButtonGroup1Change(
  78.   ButtonGroup: TfcCustomButtonGroup; OldSelected,
  79.   Selected: TfcButtonGroupItem);
  80. begin
  81.   TCustomForm(Selected.PointerTag).Show;
  82. end;
  83. procedure TMainMdiForm.FormActivate(Sender: TObject);
  84. begin
  85.   FileNew1Execute(Sender);
  86. end;
  87. procedure TMainMdiForm.WindowTileItemClick(Sender: TObject);
  88. begin
  89.   Tile;
  90. end;
  91. procedure TMainMdiForm.WindowCascadeItemClick(Sender: TObject);
  92. begin
  93.   Cascade;
  94. end;
  95. procedure TMainMdiForm.FileCloseItemClick(Sender: TObject);
  96. begin
  97.   if ActiveMDIChild <> nil then ActiveMDIChild.Close;
  98. end;
  99. end.