Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.
| Alx |
Сообщение
#1
|
|
Гость |
Люди, подскажите пожалуйста. Мне необходимо сделать панораму. Длинная кортинка, которая едет по форме. Но когда я двигаю компонент Image по форме image.left:=image.left+1 картинка как будто мерцает и на какоето время пропадает. Мне сказали что так сделать не получится. А как же тогда мне сделать панораму? Заранее спасибо! Alx
|
![]() ![]() |
| BlackShadow |
Сообщение
#2
|
|
Гость |
Цитата потому что если Вы сделаете отрисовку в таймере, а не в OnPaint, тогда при сворачивании, перекрывании и другими манипуляциями с Вашим окном, система будет слать ему WM_PAINT, и перерисовка формы будет перебивать отрисовку в таймере. А вот это не надо Цитата всю подобную графику принято помещать в обработчик события OnPaint Вот тут полностью согласен. Цитата Неплохо бы Вам попробовать немного без VCL попрограммировать, с чистым API, так сказать... много узнаете интересного. Золотые слова InvalidateRect трбует Handle окна (Form1.Handle например) и естественно сам Rect, который перерисовывать. Идея такая: сместил свою картинку, получил "след", вычислил габариты этого следа и произвёл Invalidate на этом кусочке. По сравнению с перерисовкой всей формы выигрыш обеспечен |
Alx Панорама 16.08.2004 17:33
BlackShadow Проще всего было бы через DX... С простым TImage э… 16.08.2004 19:05
Guest :p2: А тогда, соответственно, вопрос. В двух слов… 16.08.2004 19:20
BlackShadow В общем случае - нет :) DX - Это уж совсем кратко … 16.08.2004 20:03
P@sh@ DX - это видимо DirectX, компонент, ага... только … 16.08.2004 20:18
Alx Вау какой код. ОГРОМНЫЙ РЕСПЕКТ и человеческое СПА… 16.08.2004 20:38
BlackShadow Да, вот про DoubleBuffered я и не подумал :( А под… 17.08.2004 15:23
Guest Так этот код не будет работать? :( Я даже не зна… 17.08.2004 16:40
BlackShadow DoubleBuffered, это когда форма поддерживает что-т… 17.08.2004 18:08
Alx Дааа. Нашел я какие-то тексты по изучению DirectX … 17.08.2004 19:28
BlackShadow Я тут код написал???
Тот код, что присла P@sh@ вп… 17.08.2004 20:48
P@sh@ DoubleBuffered просто включает режим, когда Canvas… 18.08.2004 10:39
Alx Люди, а вот посмотрите. В том коде, который написа… 18.08.2004 15:48
BlackShadow Это не из-зп версии Delphi. Я бы посоветывал тебе … 18.08.2004 16:31
Alx А вот если я в коде убираю repaint, то тогда мирца… 18.08.2004 16:44
Бродяжник procedure TForm1.Timer1Timer(Sender: TObject);
beg… 18.08.2004 17:18
Alx Но так как написал P@sh@ у меня не как не выходит.… 18.08.2004 17:27
Guest Ну а почему у меня процедура не вызывается?:
proc… 18.08.2004 17:55
Бродяжник BlackShadow
"Свернутое окно не рисует на сво… 18.08.2004 18:01
BlackShadow Бродяжник, надеюсь к критике ты относишься нормаль… 18.08.2004 18:26
Alx Спасибо! Вечером, как только доберусь до Делфи… 18.08.2004 18:42
Бродяжник Нормально отношусь! Ламер я... зато со стажем… 18.08.2004 20:24
BlackShadow В зависимости от версии переменные могут быть иниц… 18.08.2004 21:01
Бродяжник Version 1.1. 19.08.2004 12:37
P@sh@ Alx
Ну а почему у меня процедура не вызывается?
Эт… 19.08.2004 13:14
Alx Ой! Всё супер! Не мерцает! СПАСИБОЧКИ… 19.08.2004 15:43
BlackShadow А что jpg нельзя загрузить так же как и bmp? Тогда… 19.08.2004 17:31
P@sh@ Alx
насчет bmp и jpeg - я использовал класс TBitm… 25.08.2004 14:20![]() ![]() |
|
Текстовая версия | 22.12.2025 5:58 |