84 / 85 / 48
Регистрация: 12.10.2013
Сообщений: 1,079
|
||||||
1 | ||||||
После компиляции движущаяся окружность располосована .Как устранить этот недостаток?25.10.2013, 23:46. Показов 776. Ответов 5
Метки нет (Все метки)
Код:
0
|
25.10.2013, 23:46 | |
Ответы с готовыми решениями:
5
Движущаяся окружность Как устранить эту ошибку ри компиляции? DirectX и Code::Blocks, как устранить ошибку компиляции? Как устранить ошибку компиляции "A2022: instruction operands must be the same size"? |
208 / 164 / 29
Регистрация: 11.09.2013
Сообщений: 445
|
||||||
26.10.2013, 14:52 | 2 | |||||
0
|
84 / 85 / 48
Регистрация: 12.10.2013
Сообщений: 1,079
|
|
26.10.2013, 21:35 [ТС] | 3 |
В коде ответа используется понятие буфер и буферизация .Что это такое ?Как это работает в коде?
0
|
208 / 164 / 29
Регистрация: 11.09.2013
Сообщений: 445
|
|
26.10.2013, 21:50 | 4 |
Вы рисуете вашу картинку в тот момент, когда она выводится на экран. В итоге видно только то, что успело отрисоваться (остальное - нет), вот и выглядит, как будто дергается и в полосках. Область памяти, где оно рисуется, называется видео-буфером. Двойная буферизация добавляет второй буфер. Вы рисуете на одном, а на экране в это время другой. После окончания прорисовки они меняются местами: рисунок попадает на экран СРАЗУ ВЕСЬ, а на "старом" начинает отрисовываться следующий кадр. Другая проблема была связана еще и с тем, что Вы не выключили системную отрисовку (она занимается в том числе и очисткой буфера от "старого" рисунка), а в коде используете Clear. Получается двойная работа. В VS почитайте, за что отвечают флаги в методе SetStyle, и все станет понятно.
0
|
84 / 85 / 48
Регистрация: 12.10.2013
Сообщений: 1,079
|
|
01.11.2013, 18:31 [ТС] | 5 |
Что делать ,если OptimizedDoubleBuffer отсутствует в панели элементов VS 2008?Может я не там ищу? Возможно устаревшая версия.Может есть способ добавить этот элемент?
Добавлено через 45 минут Новый код не работает .Движение круга по форме не наблюдаю.
0
|
208 / 164 / 29
Регистрация: 11.09.2013
Сообщений: 445
|
|
01.11.2013, 19:16 | 6 |
вот Ваш двойной буфер, он в строке кода из моего примера (который, кстати, работает):
SetStyle(ControlStyles.OptimizedDoubleBuffer | ControlStyles.AllPaintingInWmPaint | ControlStyles.UserPaint, true);
0
|
01.11.2013, 19:16 | |
01.11.2013, 19:16 | |
Помогаю со студенческими работами здесь
6
0xc000007b после установки драйвера KWORLD UB424-D. Как устранить? После включения ноутбука на 1-2 минуты пропадает яркость. Как это устранить? Как устранить проблемы с сетью после "лечения" Как убрать консоль после компиляции? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |