![]() |
|
|
![]()
|
|
| monax |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 125 Регистрация: 9.6.2005 Репутация: 1 Всего: 4 |
На панели (wxPanel) во время перерисовки (OnPaint) всё очень сильно мерцает. Пробовал двойную буферизацию - эффект тот же.
Перерисовка происходит, когда двигается мышь с нажатой кнопкой.
--------------------
Лаборатория программиста |
||||
|
|||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 7 Всего: 250 |
создайте обработчик панели для wxEraseBackgroundEvent
|
|||
|
||||
| bilbobagginz |
|
|||
![]() Naughtius Maximus ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8813 Регистрация: 2.3.2004 Где: Israel Репутация: нет Всего: 317 |
во-первых, вы продолжаете делать двойную буфферизацию:
пишете в mdc, а потом делаете дамп битмапы на нужный DC из памяти. согласен с предыдущим советом, и кроме того, в туториалах, к-рые как я видел использовали wxMemoryDC как вспомогательный буффер, делали так:
или использовали wxBufferedPaintDC и писали всё на него. он в дестракторе выплёвывает всё одним Blit()-ом на экран. т.е. не заморачивались с этими битмапами без надобности. -------------------- Я ещё не демон. Я только учусь. |
|||
|
||||
| monax |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 125 Регистрация: 9.6.2005 Репутация: 1 Всего: 4 |
mes, спасибо, мерцание исчезло.
bilbobagginz, по поводу использования Blit - это один из методов. Вот текст из официального руководства, там DrawBitmap идёт как альтернатива Blit-у.
Разницу между двумя этими подходами я не знаю, но результат меня устраивает. К тому жу DrawBitmap проще понять, а мой код предстоит читать инженерам, которые не имеют ИТ-шнго образования и большого опыта в программировании. --------------------
Лаборатория программиста |
|||
|
||||
| t_rex |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 143 Регистрация: 11.10.2006 Где: Украина, г. Запор ожье Репутация: 2 Всего: 7 |
--------------------
Жизнь не MultiEdit. Undo не сделаешьКросс-платформенное программирование с wxWidgetsБлог о программировании для мобильных устройтсвGoogle Android для программистов и пользователей |
|||
|
||||
![]()
|
| Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |