Читать «Виртуальная библиотека Delphi» онлайн - страница 69

Unknown

  public

    constructor Create(AWndParent: THandle); virtual;

    destructor  Destroy; override;

  end;

Декларация оконного класса TLiteWindow

Создание уникального класса окна и создание окна. Возможность субклассинга стороннего окна.

////////////////////////////////////////////////////////////////////////////////

// TLiteWindow

// _______________________________________________

// Оконный класс

////////////////////////////////////////////////////////////////////////////////

type

  TLiteWindow = class(TLiteFrame)

  private

    FWndParams  : TWindowParams;

    FWndSubclass: Pointer;

  protected

    procedure   CreateWindowParams(

var WindowParams: TWindowParams); virtual;

  public

    procedure   DefaultHandler(var Msg); override;

    constructor Create(AWndParent: THandle); override;

    constructor CreateSubclassed(AWnd: THandle); virtual;

    destructor  Destroy; override;

  end;

Декларация диалогового класса TLiteDialog

Загрузка шаблона диалога и создание диалога.

////////////////////////////////////////////////////////////////////////////////

// TLiteDialog

// _______________________________________________

// Диалоговый класс

////////////////////////////////////////////////////////////////////////////////

type

  TLiteDialog = class(TLiteFrame)

  private

    FDlgParams  : TDialogParams;

  protected

    procedure   CreateDialogParams(var DialogParams: TDialogParams); virtual;

  public

    procedure   DefaultHandler(var Msg); override;

    constructor Create(AWndParent: THandle); override;

    destructor  Destroy; override;

  end;

Декларация модального диалогового класса TLiteDialogBox

Загрузка шаблона диалога и создание диалога. Модальный показ диалога.

////////////////////////////////////////////////////////////////////////////////

// TLiteDialogBox

// ______________________________________________

// Модальный диалоговый класс

////////////////////////////////////////////////////////////////////////////////

type

  TLiteDialogBox = class(TLiteFrame)

  private

    FDlgParams  : TDialogParams;

  protected

    procedure   CreateDialogParams(var DialogParams: TDialogParams); virtual;

  public

    procedure   DefaultHandler(var Msg); override;

  public

    function    ShowModal: Integer;

  end;

Реализация базового класса TLiteFrame

implementation

////////////////////////////////////////////////////////////////////////////////

// TLiteFrame

// ___________________________________________________

// Инициализация / финализация

////////////////////////////////////////////////////////////////////////////////