Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.08.27;
Скачать: CL | DM;

Вниз

Организовать работу циклов и условий в редакторе блок-схем   Найти похожие ветки 

 
Василь   (2010-05-13 10:30) [0]

Здравствуйте! Помогите хотя бы советов как показать циклы и условия в программе редактор блок-схем. Я использую для вывода блоков массив TImage, сами блоки рисую на канве. Для перемещения блоков использую драг&дроп отсюда http://www.delphimaster.ru/articles/imgmoving.html. Надо чтобы например, пользователь "взял" блок и "кинул" его например на блок "цикл For" и этот блок отображался бы теперь в цикле. После этого надо сформировать Паскаль-код по блок схеме (но я это сам). Заранее спасибо!


 
oldman ©   (2010-05-13 11:08) [1]


> Надо чтобы например, пользователь "взял" блок и "кинул"
> его например на блок "цикл For" и этот блок отображался
> бы теперь в цикле.


И в чем проблема-то?

if ПользовательКинулБлок1наБлок2 and Блок2=ЦиклFor then
ОтобразитьБлок1внутриБлока2;

Или ты вообще не знаешь как отображаются циклы и условия?


 
RWolf ©   (2010-05-13 11:18) [2]

вопрос, наверно, в выборе контейнера, который поддерживает перетаскивание на него.
TPanel, например.


 
Василь   (2010-05-13 14:28) [3]


> Или ты вообще не знаешь как отображаются циклы и условия?

как должно выглядеть я знаю, блок-схемы рисовал в свое время)) а вот
> if ПользовательКинулБлок1наБлок2 and Блок2=ЦиклFor then
> ОтобразитьБлок1внутриБлока2;

Отобразить как? Прорисовать Блок1 в канве Блока2? Или как то еще? И как тогда текст менять в блоке если он уже прорисован на канве другого?  Нужно еще чтобы пользователь мог "вытянуть" Блок1 назад!


 
RWolf ©   (2010-05-13 14:41) [4]

По стандарту блоки соединяются стрелками.


 
12 ©   (2010-05-13 14:42) [5]

Блок должен иметь процедуру прорисовки, в переданной ему области

Блок имеет свойство вмещать блок

Блок должен прорисовывать все вмещенные в него блоки, вызвав их процедуру, передав место под это дело внутри себя

Блок должен уметь отцепить любой вмещенный в него блок.

место под это дело внутри себя надо вычислить. Следовательно, надо чтоб блок знал свои габариты. Следовательно, габариты блока будут вычисляться по габаритам всех вмещенных в него блоков.


 
Василь   (2010-05-17 11:59) [6]

а как сделать так чтобы при драг&дроп, если блок1 попадает в область блок2, то как прорисовать блок1 в области блок2 в определенной позиции блока2 ?



Страницы: 1 вся ветка

Текущий архив: 2010.08.27;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.366 c
15-1266417633
Kerk
2010-02-17 17:40
2010.08.27
Сурков, замруководителя администрации президента, о модернизации


2-1270210954
JohnKorsh
2010-04-02 16:22
2010.08.27
Смена MAC адреса.


15-1264341586
Kolan
2010-01-24 16:59
2010.08.27
Исходники DMClient а доступны для всех желающих


2-1266397313
vegarulez
2010-02-17 12:01
2010.08.27
Вопрос про наложение изображений на кнопке.


15-1267433395
12
2010-03-01 11:49
2010.08.27
Опрос. Сколько уже потратили на бесплатное образование детей?