Re: Анимированная графика в Delphi
Приветствую Малышев,
Monday, August 23, 2004, 6:00:09 PM, you wrote:
МГ> Привет ALL!
МГ> Я хочу сделать анимацию в Delphi, но не подключая каких=ни будь посторонних
МГ> библиотек (OpenGl,DirectX и пр.). И столкнулся с такой проблемой: при
МГ> прорисовки изображения постоянно "мерцает", даже если использовать
МГ> прорисовку через буфер.
МГ> Может кто-нибудь знает как избавится от "мерцания"?
МГ> А может кто подскажет библиотеки для прорисовке анимации на форме?
МГ> P/S Просто хочется сделать простенькую игрушку, не прибегая к возможностям
МГ> "мощных" библиотек. Даже подумывал сделать её попросту на TP,
В Visual C++ эта проблема решалась перехватом сообщения OnEraseBkgnd.
По умолчанию этот обработчик вызывает обработчик базового класса,
который заливает окно/форму белым цветом каждый раз при перерисовке,
откуда и мерцание. Просто убираем вызов обработчика родительского
окна (т.е. делаем функцию пустой) и все. На WinAPI аналогично -
перехват WM_ERASEBKGND и ничего не делаем (т.е. не вызываем
DefWindowProc). Эта проблемы на уровне винды, так что и в Дельфи
должно сработать.