Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Создание собственных компонентов в Delphi.


Информационный Канал Subscribe.Ru

СОЗДАНИЕ СОБСТВЕННЫХ КОМПОНЕНТОВ В DELPHI

Здравствуй, уважаемый читатель!


Cегодня мы поговорим о создании оригинальных элементов управления.

Создание оригинальных элементов управления

Оконные элементы управления в VCL и CLX - это объекты, которые появляются во время выполнения программы, и с которыми пользователь может взаимодействовать. Каждый оконный элемент управления имеет дескриптор окна, к которому можно получить доступ через свойство Handle. Дескриптор позволяет операционной системе идентифицировать элемент управления и производить над ним действия. При использовании элементов управления VCL, дескриптор позволяет элементу получить фокус ввода и доступ к функциям Windows API. В CLX, эти элементы управления - widget-based элементы управления. Каждый widget-based элемент имеет дескриптор, доступный через свойство Handle данного элемента, который идентифицирует соответствующий widget.

Все оконные элементы управления происходят от TWinControl (или TWidgetControl в CLX). Они включают в себя большинство оконных элементов управления таких, как Кнопки, Списки и Поля редактирования. В то время как вы можете произвести оригинальный элемент управления (который не относится ни к одному из существующих элементов) непосредственно из TWinControl (или TWidgetControl в CLX), Delphi предоставляет компонент TСustomControl для этих целей. TСustomControl - это специализированный оконный элемент управления, который облегчает процесс рисования сложных визуальных изображений.
Раздел Настройка сетки содержит пример создания оконного элемента управления.
Создание графических элементов управления

Если ваш элемент управления не имеет необходимости получать фокус ввода, то вы можете производить его как графический элемент управления. Графические элементы управления похожи на оконные, но не имеют дескрипторов окна, и поэтому потребляют меньшее количество системных ресурсов. Компоненты типа TLabel, которые никогда не получают фокус ввода, являются графическими элементами управления. Хотя эти элементы управления никогда не получают фокус ввода, вы можете спроектировать их отвечать на сообщения мыши.

Delphi поддерживает создание собственных графических элементов управления через компонент TGraphicControl. TGraphicControl - это абстрактный класс, произведенный от класса TControl. Несмотря на то, что вы можете производить элементы управления непосредственно от TControl, лучше начать производить от TGraphicControl, который позволяет рисовать на холсте и окне, обрабатывает сообщения WM_PAINT: все что вы должны для этого сделать - это переопределить метод Paint.
Раздел Создание графического компонента содержит пример создания графического компонента.
В следующий раз мы поговорим создании подклассов элементов управления Windows.
Полную версию моего рассказа ты найдешь на сайте http://dcomponents.narod.ru
Если у тебя есть свой материал на тему создания компонента и ты готов им поделиться с другими, пиши мне.
Дельфин.
Выпуск 11 от 08.12.2003


http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное