Компонент ЛинияDelphi , Графика и Игры , CanvasКомпонент Линия
Оформил: DeeCo Автор: Александр Журавлев Компонент предназначен для вычерчивания линий на мнемосхемах и других целей, где количество ломаных линий, созданых одним компонентом, не должно превышать 255.Инструмент - Delphi 5.1. Введение даже списка (TList), не говоря уже о коллекции, заметно замедляло отрисовку, поэтому был выбран статический массив записей линий. Компонент позволяет изменять тощину, стиль и цвет как в режиме разработки, так и в динамике. Для редактирования используется стандартный редактор компонентов, запускаемый нажатием правой кнопкой мыши. Редактирование нужно начинать с первой команды выпадающего меню (Edit Lines), а заканчивать - со второй (Exit from Editing). Редактирование заключается в добавлении линий (Add Line) и узлов (Add node), и удалении их (Remove Line и Remove Node). Можно также менять цвет (Line Color) и стиль линии (LineStyle). Ввиду ограничений, накладываемых операционными системами Windows95 и 98, стили меняются только для линий с толщиной, равной 1. Для Windows NT и 2000 таких ограничений нет. Для изменения координат узла нужно выбрать линию путем нажатия левой кнопки мыши над требуемым узлом или концом линии, и, удерживая ее, перетащить на нужное место. Выделенная линия обозначается черными квадратиками. Для большего удобства в выпадающем меню редактора указывается общее количество созданых линий, номер выбранной линии и узлов в ней. К сожалению, компонент имеет существенный недостаток - отсутствие блокировки манипулирования другими компонентами, находящимися на форме, до выхода из режима редактирования линий. Автор будет глубоко благодарен за любые советы по преодолению указанного недостатка. Автор приносит глубокую благодарность Сергею Губенко и Юрию Зотову за ценные советы по построению компонента. Компонент могут использовать все без всяких ограничений, но со ссылкой на автора. Скачать исходные коды AzLines.zip (7K) Статья Компонент Линия раздела Графика и Игры Canvas может быть полезна для разработчиков на Delphi и FreePascal. Комментарии и вопросыМатериалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |