Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.17;
Скачать: CL | DM;

Вниз

Вот такая странность замечается с KOL   Найти похожие ветки 

 
Delphi5.01 ©   (2004-04-10 14:18) [0]

Доброе время суток!
Вот такая странность замечается с KOL:
Если я один раз вывел изображение на экран с свойством TransparentColor=clLime, все ОК, но после того как я изменю картинку он выносит на экран старый рисунок (а более правильно старый силуэт). Чтобы картина стала ясней вот урл на котором я разместил скриншоты.

http://gesoft.h12.ru/kol/

Спасибо за помощь


 
miek ©   (2004-04-10 16:14) [1]

Ты с ума сошел - такие огромные скриншоты класть? И вообще, лучше код покажи, яснее будет.


 
Avenger[NhT] ©   (2004-04-10 17:38) [2]

код кидай, посмотрим!


 
Delphi5.01 ©   (2004-04-10 20:37) [3]

А вот и код:
...
   var TransparentColor: Integer;
...
 begin
...
   SrcBitMap.Draw(BufferBitMap1.Canvas.Handle,0,0);

   FillRGN(BufferBitMap1.Canvas.Handle,RGN,BRUSH);

   BkGround.Draw(BufferBitMap2.Canvas.Handle,0,0);

   TransparentColor:=BufferBitMap1.Canvas.Pixels[0,0];

   BufferBitMap1.DrawTransparent(BufferBitMap2.Canvas.Handle,0,0,TransparentColor);

   BufferBitMap2.Draw(DestCanvas.Handle,0,0);
...
Проблема в следующем, почему-то при вызове этой функции в первые с одним значением RGN все работает, но при вызове этой же функции при другом значении, несмотря на то что в BufferBitMap1 рисунок правильный, при выводе его на экран, вместо TransparentDraw он выводит на экран только ту часть BufferBitMap1 которая была в первой ситуации (при первом вызове).


 
Delphi5.01 ©   (2004-04-11 08:10) [4]

У меня появилось подозрение что после одного TransparentDraw-а этот Битмап сохраняет маску, ну а после его изменения Битмапа маска не изменяется! :-( Если я прав, то пожалуйста объясните почему и как решить проблему?


 
Delphi5.01 ©   (2004-04-11 08:20) [5]

УРА!!!
Я оказался правым, битмап по не известной причине сохраняет старую маску. Самым банальным решением является, создание BufferBitMap* при каждом использовании заново. Может кто посоветует более быстрый вариант?



Страницы: 1 вся ветка

Текущий архив: 2004.10.17;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.074 c
1-1096655555
UserUserov
2004-10-01 22:32
2004.10.17
Assembler в Delhi


1-1096999542
BDenis
2004-10-05 22:05
2004.10.17
Каким образом лучше хранить разнотипные данные в одном файле?


6-1092303906
digger
2004-08-12 13:45
2004.10.17
idHTTP через прокси


14-1096139584
kaZaNoVa
2004-09-25 23:13
2004.10.17
Windows 2003 & Modem


1-1096535034
BorH
2004-09-30 13:03
2004.10.17
Конвертация String[4] в Integer