Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Графика [D5, Win95/98]


SergeN ©   (2003-01-28 16:08:00) 

Дописываю прогу. Добавил форму типа "About" и рисую на её "холсте" логотип.
Добавил Timer с интервалом 20. На каждый "тик" вращяю изображение логотипа. Всё хорошо, всё красиво... Но каждые 3 сек.
изображение какбы "моргает". Форму не refresh-у. Отчего это?


Dms   (2003-01-28 16:39:00) [1]

> -> Dms, 20 мс - это не моя скорость!
В смысле ?


SergeN   (2003-01-28 16:38:00) [2]

-> Dms, 20 мс - это не моя скорость!
-> gsu, почему мы издеваемся?...


gsu   (2003-01-28 16:36:00) [3]

но допускаю, что я не прав ...


gsu   (2003-01-28 16:35:00) [4]

вы что издеваетесь ?


Dms   (2003-01-28 16:33:00) [5]

50 Гц - это 20 мс !

1. попробуй в этот момент приоритет у программы высокий поставить
2. возможно, такие логотипчики удобнее делать в openGL ?


SergeN   (2003-01-28 16:28:00) [6]

Dms, поставил 50 -> теперь "моргает" через 1 сек.
А рисую просто: ellipse и три линии. Линии рисую на каждый "тик" цветом формы с меняющимися углами. Получается что-то вроде трёх дуг которые крутятся вокруг общего центра...


Dms   (2003-01-28 16:19:00) [7]

2 han_malign:
кина насмотрелся ? нужно 50 герц держать !


Dms   (2003-01-28 16:18:00) [8]

ты сам напиши подробнее:

Как рисуешь? Как вращаешь ?


han_malign   (2003-01-28 16:17:00) [9]

Интервал достаточно 40 (1/25 сек).
"какбы "моргает"" - скорее всего накапливаются сообщения в очереди и несколько WM_TIMER отрабатывают неравномерно...


SergeN   (2003-01-28 16:15:00) [10]

gsu, а подробнее?..


gsu   (2003-01-28 16:13:00) [11]

Используй буфферный холст или может DoubleBuffered подоедет


Наверх

Титульная страница Поиск, карта сайта Написать письмо