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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.01.2010, 15:49   #1
newkobra
Пользователь
 
Регистрация: 29.04.2009
Сообщений: 33
По умолчанию Затираеться рисунок

Доброго времени суток.
У меня в курсовой возникли некие проблемы. Мне нужно на форму выводить график функции. Я это делаю с помощью Form1.Canvas но возникла проблема, если спрятать форму или навести на нее другую то рисунок затираеться + график появляться сверху над другими компонентами, а хотелось чтоб компоненты(Label) был сверху над рисунком. Есть ли способ это исправить.
И попрошу немного поподробнее, а то я Delphi не очень хорошо знаю, но курсовую заставили делать именно на Delphi.
Заранее благодарен!
newkobra вне форума Ответить с цитированием
Старый 05.01.2010, 22:29   #2
SoftKoc
Форумчанин
 
Аватар для SoftKoc
 
Регистрация: 07.11.2009
Сообщений: 218
По умолчанию

Здравствуйте!
Чтобы не затирался рисунок можно скопировать его в переменную TBitmap. А потом выводить его обратно с TBitmap на Canvas при OnPaint - Form(мы) используя Canvas.Draw.
Или если у вас есть процедура которая рисует график функции.
Тогда можно просто ее вызывать (для перерисовки) в OnPaint - Form(мы).
Или просто используйте компонент Image, рисуйте на его канве (рисунок не будет затираться)!
Я бы изменил мир, но Бог не дает исходников...
Если помог, нажми на весы и поставь плюс - в знак благодарности

Последний раз редактировалось SoftKoc; 05.01.2010 в 22:34.
SoftKoc вне форума Ответить с цитированием
Старый 06.01.2010, 01:27   #3
newkobra
Пользователь
 
Регистрация: 29.04.2009
Сообщений: 33
По умолчанию

Цитата:
Сообщение от SoftKoc Посмотреть сообщение
Здравствуйте!
Или просто используйте компонент Image, рисуйте на его канве (рисунок не будет затираться)!
Вот об этом поподробнее если можна))
У меня есть процедура которую я вызываю несколько раз(у меня 4 графика). В этой процедуре у меня код типа:
Код:
with Form1 do
Begin
//Здесь происходит все рисования
end
Можна ли как нибудь изменить чтоб внутри рисования ничего не изменять?
И попрошу код если не затруднит.
newkobra вне форума Ответить с цитированием
Старый 06.01.2010, 02:05   #4
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Ну что вы растерялись?
Все то же самое, но вместо Canvas формы используйте рекомендованный вам Canvas у имэдж...
Код:
with Image1 do
Begin
//Здесь происходит все рисование
end
А лучше
Код:
with Image1.Canvas do
Image1 разместите там, где вы рисовали раньше. Хоть растяните на всю форму...

Последний раз редактировалось mihali4; 06.01.2010 в 02:09.
mihali4 вне форума Ответить с цитированием
Старый 06.01.2010, 03:32   #5
SoftKoc
Форумчанин
 
Аватар для SoftKoc
 
Регистрация: 07.11.2009
Сообщений: 218
Радость

Просто положите на Form(му) Image1 и измените пару слов в коде.
А Image1 растяните как вам угодно, в посту #4 уже говорили.
Код:
with Image1.Canvas do
 Begin
 //Здесь происходит все рисования.
 End;
Я бы изменил мир, но Бог не дает исходников...
Если помог, нажми на весы и поставь плюс - в знак благодарности
SoftKoc вне форума Ответить с цитированием
Старый 06.01.2010, 03:45   #6
SoftKoc
Форумчанин
 
Аватар для SoftKoc
 
Регистрация: 07.11.2009
Сообщений: 218
Восклицание

Вот вам пример!
Можете свернуть его, развернуть и от этого ничего не измениться,
Все что было нарисовано то и осталось!
Primer.rar
Я бы изменил мир, но Бог не дает исходников...
Если помог, нажми на весы и поставь плюс - в знак благодарности
SoftKoc вне форума Ответить с цитированием
Старый 06.01.2010, 22:22   #7
SoftKoc
Форумчанин
 
Аватар для SoftKoc
 
Регистрация: 07.11.2009
Сообщений: 218
По умолчанию

Получилось?
Я бы изменил мир, но Бог не дает исходников...
Если помог, нажми на весы и поставь плюс - в знак благодарности
SoftKoc вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
3D рисунок LevonNikox PHP 0 04.08.2009 22:43
Рисунок Артэс Win Api 16 12.06.2008 18:07
Рисунок на кнопке JIimonKa Общие вопросы Delphi 3 27.05.2008 07:41
Рисунок курсора Fellics{новичок} Помощь студентам 2 25.05.2008 20:04
Рисунок в PopupMenu Witaliy Общие вопросы Delphi 1 03.05.2008 17:35