32 Урока Borland Delphi

         

Потомок TWinControl, вводит понятие канвы


  • TCustomControl - Потомок TWinControl, вводит понятие канвы (Canvas) и метод Paint() для лучшего контроля за прорисовкой компонента. Именно этот класс используется в качестве базового для построения большинства видимых компонент, имеющих оконный handle.
  • TXxxxx - Класс вроде TEdit или TButton. Используются с целью доопределения их свойств и методов или переопределения значения свойств, принимаемых по умолчанию.
        1. Пример создания компонента
        Для примера создадим новый класс, мутант TButton, в котором изменим значение по умолчанию свойства ShowHint на True и добавим новое свойство - счетчик нажатий на кнопку. Заготовка модуля для создания нового компонента уже есть (см. пункт Заготовка для нового компонента). Теперь исходный текст выглядит так: unit New_btn;
        interface
        uses
        SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics,
        Controls, Forms, Dialogs, StdCtrls;
        type
        TMyButton = class(TButton)
        private
        { Private declarations }
        FClickCount : Longint;
        protected
        { Protected declarations }
        public
        { Public declarations }
        constructor Create(AOwner : TComponent); override;
        procedure Click; override;
        property ClickCount : Longint read FClickCount write FClickCount; published
        { Published declarations }
        end;
        procedure Register;
        implementation
        constructor TMyButton.Create(AOwner : TComponent);
        begin
        inherited Create(AOwner);
        ShowHint:=True;
        FClickCount:=0;
        end;
        procedure TMyButton.Click;
        begin
        Inc(FClickCount);
        inherited Click;
        end;
        procedure Register;
        begin
        RegisterComponents('Samples', [TMyButton]);
        end;
        end.
        Для того, чтобы переопределить начальное значение свойства при создании объекта, нужно переписать конструктор Create, в котором и присвоить этому свойству нужное значение (не забыв перед этим вызвать конструктор предка).
        Новое свойство для подсчета нажатий на клавишу называется ClickCount. Его внутреннее поле для сохранения значения - FClickCount имеет тип Longint, емкости поля хватит надолго.
         
         
         
         


            Содержание  Назад  Вперед







            Forekc.ru
            Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий