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

📄 umainform.pas

📁 观察者模式delphi实例实现,同时注意软件的设计
💻 PAS
字号:
unit uMainForm;

interface

uses
    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
    Dialogs, ToolWin, ComCtrls, ExtCtrls, uPhotoMgr, uInterface;

type
    TMainForm = class(TForm)
        ToolBar1: TToolBar;
        PnlLeft: TPanel;
        Splitter: TSplitter;
        PnlRight: TPanel;
        PnlTop: TPanel;
        Splitter1: TSplitter;
        PnlBot: TPanel;
        ToolButton1: TToolButton;
        procedure FormCreate(Sender: TObject);
        procedure FormDestroy(Sender: TObject);
        procedure ToolButton1Click(Sender: TObject);
    private
    { Private declarations }
    public
    { Public declarations }
    end;

var
    MainForm: TMainForm;
    PhotoMgr: TPhotoMgr;
implementation
uses
    uTreeListForm, uTubForm, uPanelForm, utils;
{$R *.dfm}

procedure TMainForm.FormCreate(Sender: TObject);
begin
    TreeListForm := TTreeListForm.Create(nil);
    TubForm := TTubForm.Create(nil);
    PanelForm := TPanelForm.Create(nil);
    ShowFormAsChild(TForm(TreeListForm), TTreeListForm, PnlTop);
    ShowFormAsChild(TForm(TubForm), TTubForm, PnlBot);
    ShowFormAsChild(TForm(PanelForm), TPanelForm, PnlRight);

    PhotoMgr := TPhotoMgr.Create;
    PhotoMgr.AddNotify(PanelForm);
    PhotoMgr.AddNotify(TubForm);
    PhotoMgr.AddNotify(TreeListForm);
    PanelForm.SetPhotoMgr(PhotoMgr);
    TreeListForm.SetPhotoMgr(PhotoMgr);
    TubForm.SetPhotoMgr(PhotoMgr);

end;

{------------------------------------------------------------------------------}
procedure TMainForm.FormDestroy(Sender: TObject);
begin
    TreeListForm.Free;
    TubForm.Free;
    PanelForm.Free;
    PhotoMgr.Free;
end;

{//////////////////////////////////////////////////////////////////////////////}
procedure TMainForm.ToolButton1Click(Sender: TObject);
begin
    PhotoMgr.Newp;
end;

end.

⌨️ 快捷键说明

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