[ главная ]   [ рейтинг статей ]   [ справочник радиолюбителя ]   [ новости мира ИТ ]



Ответов: 0
25-02-12 07:01







   Web - программирование
PHP


ASP






XML



CSS

SSI





   Программирование под ОС











   Web - технологии








   Базы Данных









   Графика






Данные




Программирование под ОС / C - C++ /

Построение компонент в C++Builder

Введение

Прежде чем приступить к написанию компонент, больше, чем где-нибудь еще в C++Builder, важно решить, что же вы на самом деле хотите сделать. Построение компонент - одна из наименее RAD-ориентированных вещей в C++Builder. Очень возможно, что вы сэкономите кучу времени, если заранее решите, что же именно ваш компонент должен делать, и как он должен это делать, прежде чем начать программировать.

Проект


Один из проектов автора статьи в Билдере - сконвертировать текстовый симулятор в нечто с удобным GUI интерфейсом (этот симулятор используется для изучения архитектуры компьютеров и языка ассемблер). Для такого проекта было бы неплохо иметь индикатор для отображения нулевых или единичных значений, и, хотя удобно было бы воспользоваться стандартным компонентом, ни один из них не имеет таких свойств.

Основные принципы

Первое, с чего следует начать при написании компонента - это решить, что именно он должен делать. Компонент, который я хочу создать, должен быть одного цвета, когда он включен, и другого, когда выключен. Он также должен иметь свойство On/Off. OK, это звучит очень просто, но помните, что первое правило, когда начинаешь что-нибудь делать - пытаться сохранить проект простым!

Следующий шаг - решить, на каком компоненте будет основан наш. Здесь самое время взглянуть на иерархию VCL. Сразу становится ясно, что наш компонент будет разновидностью TGraphicControl, и уж если мы хотим сохранить компонент простым, почему бы не сделать его простой окружность вместо сложного битмапа. TShape на первый взгляд, кажется идеальным. Давайте познакомимся с ним поближе (это можно сделать с помощью хелпа или просто, поместив его на форму и внимательно взглянув на его свойства и методы). Что ж, у него имеется несколько не нужных нам свойств и методов, но, по крайней мере, в него встроена вся нужная нам функциональность.

  • Замечание: Вы не можете свойства или события из компонента, от которого вы наследуете, а можете только подняться на шаг в иерархии наследования. Это значит, что вы можете смутить конечного пользователя (или себя) лишними свойствами, которые на мамом деле не нужны для работы компонента, если выберете в качастве предка компонент, который находится слишком высоко в иерархии, и, наоборот, вынуждены будете писать всю функциональность сами, если возьмете предка слишком низко в иерархии.

Все, что мы хотим сделать - это сменить форму компонента на ту, которая нам нужна и менять цвет кисти, когда индикатор включается или выключается.Это все довольно просто, и сейчас, когда мы это продумали, можно приступать к делу. 



Комментарии

 Ваш комментарий к данному материалу будет интересен нам и нашим читателям!



Последние статьи: Программирование под ОС / C - C++ /

Пишем CD проигрыватель 2
28-05-2010   

Сейчас я покажу как можно написать простой проигрыватель CD дисков. Для начала разместим все нужные компоненты на форме (см. рисунок)... подробнее

Кол. просмотров: общее - 4145 сегодня - 0

Пишем браузер
28-05-2010   

Продолжаю тему клонирования программ darkamstera на Delphi в С++Builder. В этой статье я покажу, как с помощью стандартных компонентов, можно создать свой браузер. Браузер будет на движке всеми-любимого InternetExplorer. Наш зверь сможет ходить по URL... подробнее

Кол. просмотров: общее - 2920 сегодня - 0

Информация о системе
28-05-2010   

Выводим информацию о нашей родненькой системе. Для получения большей части информации мы будем использовать обширные функции, это не так сложно, как может показатся с первого взгляда и вообще код довольно простой и примитивный, так что покапавшись в нем пару минут - можно в легкостью разобраться что к чему, зачем и как... подробнее

Кол. просмотров: общее - 2941 сегодня - 0

FTP клиент своими руками
28-05-2010   

Здраствуй, сечас я покажу, как в CBuilder можно создать свой простой FTP-клиент, похожий пример можно найти в документации C++Builder Developnets Guilde... подробнее

Кол. просмотров: общее - 3387 сегодня - 0

Работаем с POP-сервером
28-05-2010   

Здраствуй, в этой статье я расскажу про способы получения e-mail писем и их прочтения. Для начала давайте составим интерфейс будущей программы Вот, что у меня вышло... подробнее

Кол. просмотров: общее - 2985 сегодня - 0



  WWW.COMPROG.RU - 2009-2012 | Designed and Powered by Zaipov Renat | Projects