![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Глюк с копированием на Cаnvas формы [D3, D5, D6, Win95/98]
KilkennyCat © (2002-05-29 20:02:00)Делаю StretchBlt с одной канвы(созданной мною) на небольшой участок канвы формы. Делаю это в таймере, очень часто.
Проблема: иногда перестает переносить изображение.
Изображение на исходной канве по основным параметрам не меняется.
Вопрос: в связи с чем это может быть связано, и может ли помочь UpdateBoundsRect()? (На всякий случай я его использую, но глюк столь редко проявляется, что не могу быть уверенным в его излечении)
KilkennyCat (2002-05-29 21:12:00) [1]хе... кода дофига более 3000 строк и все вязано-перевязано...
да и зачем?
У меня есть поверхность директикса.
В таймере я присваиваю ей канвас GetDC(HDC) рисую на нем, затем делаю StretchBlt(Canvas.Handle,x,y,width,height,HDC,xLeftTopHDC,yLeftTopHDC,xRightBottomHDC,yRightBottomHDC,SrcCopy) затем Release(HDC);
В коде ошибке нет, UpdateBoundsRect не помог.
Я вышел из ситуации, создав еще одну поверхность-регион DirectX, которая висит в том прямоугольнике, куда раньше блиттил.
Но все-таки почему? Иногда часа два гоняю - нормально. А иногда через минуту канвас переставал обновляться.
SPeller (2002-05-29 20:23:00) [2]Код?