Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Работа с TBitmap в KOL


<Falcon> ©   (2005-01-21 14:39:00) 

Возможно кто-то  сталкивался с подобной ситуацией.
  На форме лежит PaintBox, в onPaint событии есть такой код

procedure TForm4.PaintBox1Paint(Sender: PControl; DC: HDC);
begin
 PaintBox1.Canvas.Brush.Color:=clBtnFace;
 PaintBox1.Canvas.FillRect(MakeREct(0,0,PaintBox1.Width,PaintBox1.Height));
 PaintBox1.Canvas.Brush.Color:=clWhite;
 PaintBox1.Canvas.FillRect(ListR);
 if Page <> 0 then
   StretchBlt(PaintBox1.Canvas.Handle,X,Y,DRect.Right-DRect.Left, DRect.Bottom-DRect.Top,
       SumBitmap.Canvas.Handle,SRect.Left,SRect.Top,SRect.Right-SRect.Left, SRect.Bottom-SRect.Top,SRCCOPY);
end;

SumBitmap создается при создании формы, освобождается по закрытию, а его содержимое меняется по событиям в программе (а также ширина, высота, свойства кисти)
При этом после одного-двух изменений в битмэпе программа вылетает с ошибкой AccessVialation на коловской функции Canvas.GrtPen
Что может быть причиной?
D7 WinXP KOL2.0


miek   (2005-01-23 00:08:00) [1]

О, DDB - это плохо, с ним всегда бывают глюки. Создавай битмап через NewDIBitmap (могу ошибиться в названии) и сразу задавай его формат. 90% уверенности, что все проблемы исчезнут.


&lt;Falcon&gt;   (2005-01-22 19:54:00) [2]


> Такое было в старых версиях KOL. У тебя какая?

У меня версия 2.0
К стати, при изменении высоты битмэпа вводится строка

HandleType := bmDDB;

при изменении ширины - нет. Почему и вообще, для чего это нужно?


thaddy   (2005-01-22 00:59:00) [3]

I can not reproduce this ..
.. did a loop of 100 times... (without pause)
Maybe something different?


miek   (2005-01-21 20:16:00) [4]

Такое было в старых версиях KOL. У тебя какая?


Наверх

Титульная страница Поиск, карта сайта Написать письмо