powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Отрисовка BitBlt в PictureBox мерцает при скролинге контрола
8 сообщений из 8, страница 1 из 1
Отрисовка BitBlt в PictureBox мерцает при скролинге контрола
    #38975508
Eolt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В PictureBox рисую всякие графики, и во время скроллинга контрола происходит неприятное мерцание в контроле.
Пробовал на время отрисовки лочить его функцией LockWindowUpdate, нифига не помогает. Сочетание очистки, рисование и скролинга все равно порождает мерцание. Как его можно побороть?
...
Рейтинг: 0 / 0
Отрисовка BitBlt в PictureBox мерцает при скролинге контрола
    #38975524
ATM-TURBO 2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Eolt,
Все зависит от содержимого.
Самый распространенный - двойная буферизация это если у тебя есть прозрачные (полупрозрачные) объекты. Это самый простой способ т.к. у контролов есть свойство Autoredraw, но это более расточительный по памяти способ.
Другой способ отрисовывать только там где нужно, использовать отсечение и т.п. К примеру у тебя есть движение картинки на каком-либо фоне. Вместо того чтобы рисовать полностью фон а сверху рисовать картинку, ты создаешь регион отсечения так чтобы у тебя исключалась из отрисовки та область, в которой будет следующий кадр объекта, рисуешь полностью фон, а потом убираешь область отсечения и рисуешь свой объект.
...
Рейтинг: 0 / 0
Отрисовка BitBlt в PictureBox мерцает при скролинге контрола
    #38975525
ATM-TURBO 2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кстати и скроллить нужно правильно, для этого есть специальные функции которые скроллят DC.
...
Рейтинг: 0 / 0
Отрисовка BitBlt в PictureBox мерцает при скролинге контрола
    #38975539
Eolt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ATM-TURBO 2Кстати и скроллить нужно правильно, для этого есть специальные функции которые скроллят DC.

Какие?
...
Рейтинг: 0 / 0
Отрисовка BitBlt в PictureBox мерцает при скролинге контрола
    #38975544
ATM-TURBO 2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Eolt,

ScrollDC, ScrollWindowEx
...
Рейтинг: 0 / 0
Отрисовка BitBlt в PictureBox мерцает при скролинге контрола
    #38975580
ATM-TURBO 2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот пример с 2-й буферизацией.
...
Рейтинг: 0 / 0
Отрисовка BitBlt в PictureBox мерцает при скролинге контрола
    #38975589
Eolt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ATM-TURBO 2Вот пример с 2-й буферизацией.

Прикольно, действительно не мерцает))
...
Рейтинг: 0 / 0
Отрисовка BitBlt в PictureBox мерцает при скролинге контрола
    #38975593
ATM-TURBO 2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Eolt,

Пробуй отключать Autoredraw и будет мерцать.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Отрисовка BitBlt в PictureBox мерцает при скролинге контрола
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]