Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.04.2012, 14:04   #1
allod26
Пользователь
 
Регистрация: 15.09.2011
Сообщений: 10
По умолчанию Delphi. Визуализатор. Литература.

Требуется написать визуализатор, наглядно показывающий метод сортировки слиянием.
Что то типо этого ==> http://rain.ifmo.ru/cat/view.php/vis...ple-merge-2001
В частности должно присутствовать:


вывод пояснения к каждому шагу алгоритма
работа в пошаговом и автоматическом режиме,
регулировка скорости автоматического выполнения
возможность отката на любое количество шагов назад,
работа как с предварительно заданными, так и со случайными и введёнными пользователем данными


Не подскажите какой нибудь гайд по созданию визуализатора на delphi?
allod26 вне форума Ответить с цитированием
Старый 14.04.2012, 20:22   #2
chertovich
Форумчанин
 
Аватар для chertovich
 
Регистрация: 26.07.2009
Сообщений: 489
По умолчанию

Если ничего сложного то можно через Canvas + Timer
Если в глубине души вы программист, то, следуя своим наклонностям, вы захотите написать кусок кода.
chertovich вне форума Ответить с цитированием
Старый 15.04.2012, 12:04   #3
allod26
Пользователь
 
Регистрация: 15.09.2011
Сообщений: 10
По умолчанию

Там немножко мудреней.

Подскажите компонент/кнопку, при нажатии на которую, алгоритм запускается пошагово с заданной мною задержкой. Для задержки используются кнопки "ускорить", "замедлить". Причем еще нужны кнопки для управления алгоритма: "пауза", "сделать шаг назад", "сделать шаг вперед".
И еще как то нужно вставить в форму картинки из файла.
allod26 вне форума Ответить с цитированием
Старый 16.04.2012, 10:09   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Подскажите компонент/кнопку, при нажатии на которую, алгоритм запускается пошагово с заданной мною задержкой.
думаю, что нет такого "готового" решения.

Вам прийдётся написать реализацию подобных действий САМОСТОЯТЕЛЬНО (о ужас, ужас!) кодом на Delphi.

Цитата:
И еще как то нужно вставить в форму картинки из файла.
если я правильно понял, и имеется в виду графический файл, тогда можно кинуть на форму компонент TImage и грузить картинку в него.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 16.04.2012, 11:57   #5
allod26
Пользователь
 
Регистрация: 15.09.2011
Сообщений: 10
По умолчанию

Почти все сделал.

Расскажите, как работать с таймером в Delphi.

Если я в интервале задам 50. И вот так запишу:

Код:
 Timer1.Enabled:=True;

.........................................
PaintBox1.Canvas.Rectangle...
PaintBox1.Canvas.MoveTo...
PaintBox1.Canvas.LineTo...
......................................
// и т.д.

 Timer1.Enabled:=False;

оно ведь не сработает?

нужно, что бы картинки выводились с задержкой
allod26 вне форума Ответить с цитированием
Старый 16.04.2012, 12:04   #6
EridorBlade
CAE Engineer
Пользователь
 
Аватар для EridorBlade
 
Регистрация: 10.03.2011
Сообщений: 75
По умолчанию

Цитата:
Сообщение от allod26 Посмотреть сообщение
Почти все сделал.

Расскажите, как работать с таймером в Delphi.

Если я в интервале задам 50. И вот так запишу:

оно ведь не сработает?

нужно, что бы картинки выводились с задержкой
Например при создании формы
Код:
 Timer1.Enabled:=False; // таймер выключен
Пишите допустим по нажатию кнопки
Код:
 Timer1.Enabled:=True; // таймер включен (запущен)
Ваши события поместите в обработчик OnTimer - выполняется после присвоения
Timer1.Enabled:=True по истечении вашего Interval т.е. 50 мс
Код:
.........................................
PaintBox1.Canvas.Rectangle...
PaintBox1.Canvas.MoveTo...
PaintBox1.Canvas.LineTo...
......................................
// и т.д.

 Timer1.Enabled:=False; // выключаем таймер
EridorBlade вне форума Ответить с цитированием
Старый 16.04.2012, 12:28   #7
chertovich
Форумчанин
 
Аватар для chertovich
 
Регистрация: 26.07.2009
Сообщений: 489
По умолчанию

Что решать сложные задачи, необходимо их разбить на более простые. Например, написать компонент по отрисовке какой-то информации, то есть задаем необходимые параметры (можно, через свойства) и он отображает её необходимым, заданным образом.
Вторым компонентом (не визуальным, а например будет объектом или невиз. компонентом, суть не меняется) будет сам движок, то есть он будет содержать сам алгоритм, вот в нем и можно делать и задержки и все что угодно.
И по написание и отладки этих компонент, их необходимо связать и отладить).
Если в глубине души вы программист, то, следуя своим наклонностям, вы захотите написать кусок кода.
chertovich вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Литература по Delphi crazy horse Общие вопросы Delphi 36 24.03.2022 14:48
Визуализатор деревьев Alekc1989 Помощь студентам 0 03.02.2011 11:02
Литература по Delphi 7 Ромка-12 Помощь студентам 1 17.09.2010 07:18
Не работает визуализатор в 3D Max 2009 Yar Свободное общение 0 07.08.2009 23:52