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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как связать нарисованную схему с классом?? 
:(
    Опции темы
SANCHO123
  Дата 12.4.2009, 20:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Здравствуйте!
Есть схема.
(примерно нарисовал в вложении)

Квадраты рисую так.

Image1.Canvas.Rectangle();

Каждый квадрат - это объект у которого есть разные параметры (Значение на входе, функция обработки..)


Код

 TElement = class
  private
    FInput double;
    FFunction: TFunction;
  public
///////
  end;

  TRjad = class
   private
    FQV: array of TElement;
  public
///////
  end;
 

 TShema = class
  private
    FQV: array of TRjad;
  public
   //////   
  Paint(C: TCanvas); /// тут нужно реализовать само рисование
  end;




1) Как сделать чтобы при двойном щелчке на квадрате появлялось окно для редактирования этих параметров.
2) Как нарисованную схему связать с классом ??

Присоединённый файл ( Кол-во скачиваний: 11 )
Присоединённый файл  1.jpg 22,18 Kb
PM MAIL   Вверх
CodeMonkey
Дата 12.4.2009, 21:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1839
Регистрация: 24.6.2008
Где: Россия, Тверь

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



1). В OnDblClick пробежаться по списку всех прямоугольников и проверить вхождение точки в координаты прямоугольника (есть полезная функция PtInRect). Как нашли - показали формочку с параметрами этого самого найденного прямоугольника. Если не нашли - значит пользователь щёлкнул мимо прямоугольника. Доп. вопрос: могут ли прямоугольники пересекаться? И что делать, если пользователь щёлкает в точку, принадлежащую многим?
2). Вообще не понятно о чём идёт речь. Распишите подробнее.


--------------------
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
SANCHO123
Дата 12.4.2009, 22:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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




У меня была идея сделать что-то подобное как в Matlab'е ( в вложении).

И примерно действия такие же как в Matlab'е.


Квадрат1. вход=2. Функция "Вход*2". Выход=4   ------->Квадрат2. Вход 4. Функция "Вход-1". ВЫход=3
               I
               I
               I
Квадрат 3.Вход=4. Функция "Вход+10". Выход=14


Когда елементы соедены стрелка черная, когда нет(стрелка не касается другого элемента) - то другая (красная например).

Пересечение прямоугольников нежелательно. Нужно предусмотреть, чтобы не пересекались.




Присоединённый файл ( Кол-во скачиваний: 10 )
Присоединённый файл  2.JPG 20,53 Kb
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

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

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

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


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

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


 




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


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

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