Модераторы: Snowy, Alexeis, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Графический контрол, создание графического контрола 
:(
    Опции темы
Dapo
Дата 8.1.2003, 13:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 417
Регистрация: 18.4.2002

Репутация: нет
Всего: 1



Здравствуйте. Подскажите, как реализовать такую штуку: программно создаются объекты (наследники от TImage) и их можно связывать (выглядеть это должно примерно как в Access-e связываются таблицы в схеме данных). Вот с этими линками и проблема. Просто отрисовывать эти связи(линки) на канве владельца конечно не выход, ведь каждый линк должен быть контролом (отслеживать мышку, выделяться, "ломаться" и т.д.) Пробовал создавать наследника от TGraphicControl, так вроде бы все нормально, НО его клиентская область закрывает часть владельца и естественно берет все события мыши в этой области на себя. Как обойти эту проблему или я вообще не там копаю?
PM MAIL   Вверх
neutrino
Дата 9.1.2003, 02:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Gothic soul
****


Профиль
Группа: Модератор
Сообщений: 3041
Регистрация: 25.3.2002
Где: Верхняя Галилея, Кармиэль

Репутация: нет
Всего: 62



Приветствую!
В общем можно проверять куда именно нажал пользователь. Потом, если оказалось, что нужно передать управление контролу лежащему ниже, передать ему это же событие и пересчитать координаты относительно общего родителя (формы например).


--------------------
The truth comes from within ...

Покойся с миром, Vit 
PM MAIL WWW ICQ Skype GTalk   Вверх
Dapo
Дата 9.1.2003, 13:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 417
Регистрация: 18.4.2002

Репутация: нет
Всего: 1



Спасибо. А может есть менее извращенные способы? :-) Извиняюсь -более изящные. :-)
PM MAIL   Вверх
neutrino
Дата 9.1.2003, 18:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Gothic soul
****


Профиль
Группа: Модератор
Сообщений: 3041
Регистрация: 25.3.2002
Где: Верхняя Галилея, Кармиэль

Репутация: нет
Всего: 62



Объясни свою задачу поподробнее. Если у тебя диагональная линия, соответственно должна занимать целый прямоугольник. А если тебе ее сделать ломанной? Только вертикальные и горизонтальные?


--------------------
The truth comes from within ...

Покойся с миром, Vit 
PM MAIL WWW ICQ Skype GTalk   Вверх
Dapo
  Дата 10.1.2003, 17:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 417
Регистрация: 18.4.2002

Репутация: нет
Всего: 1



Могут быть диагоналями. Вообще-то проблема с узилась )). Как вывести на канву изображение, так чтобы "бэкграунд" не затирался? В этом случае можно не использовать контролы в качестве предков, а сделать наследника от TObject и там уже от свойств плясать. Хотя может тоже бред?
PM MAIL   Вверх
neutrino
Дата 12.1.2003, 20:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Gothic soul
****


Профиль
Группа: Модератор
Сообщений: 3041
Регистрация: 25.3.2002
Где: Верхняя Галилея, Кармиэль

Репутация: нет
Всего: 62



Есть два случая:
1) Ты наследуешь свой компонент от TGraphicControl
решение: ControlStyle=ControlStyle - [csOpaque]

2) Ты наследуешь его от TCustomControl
решение: http://www.forum.vingrad.ru/cgi-bin....;t=3947


--------------------
The truth comes from within ...

Покойся с миром, Vit 
PM MAIL WWW ICQ Skype GTalk   Вверх
Alexandr Sudakov
Дата 13.1.2003, 20:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 13.1.2003

Репутация: нет
Всего: нет



А еще можно почитать про Region Creation and Selection.
Это правда, слегка экзотично...:)
PM MAIL ICQ   Вверх
neutrino
Дата 14.1.2003, 03:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Gothic soul
****


Профиль
Группа: Модератор
Сообщений: 3041
Регистрация: 25.3.2002
Где: Верхняя Галилея, Кармиэль

Репутация: нет
Всего: 62



Ничего экзотичного тут нет, но довольно трудоемко - это да. Вообще в FAQ по C++ eсть пример работы с регионами.


--------------------
The truth comes from within ...

Покойся с миром, Vit 
PM MAIL WWW ICQ Skype GTalk   Вверх
Dapo
Дата 14.1.2003, 14:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 417
Регистрация: 18.4.2002

Репутация: нет
Всего: 1



Про регионы я уже тоже думал :-). Спасибо.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Звук, графика и видео"
Girder
Snowy
Alexeis

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • По вопросам разработки игр стоит заглянуть сюда

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема »


 




[ Время генерации скрипта: 0.1340 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.