После долгих раздумий я понял, что Dormant нужен для очистки изображения (а точнее, его канвы и контекста). Он используется обычно совместно с методами TBitmap.FreeImage, TBitmap.ReleaseHandle
| Код | procedure TForm1.Button1Click(Sender: TObject);
var BitMap1,BitMap2 : TBitMap; MyFormat : Word; begin BitMap2 := TBitMap.Create; BitMap1 := TBitMap.Create; try BitMap1.LoadFromFile('c:\Program Files\common Files\Borland Shared\Images\Splash\256color\factory.bmp'); BitMap2.Assign(BitMap1); // Copy BitMap1 into BitMap2 BitMap2.Dormant; // Free up GDI resources BitMap2.FreeImage; // Free up Memory. Canvas.Draw(20,20,BitMap2); // Note that previous calls don't lose the image BitMap2.Monochrome := true; Canvas.Draw(80,80,BitMap2); BitMap2.ReleaseHandle; // This will actually lose the bitmap; finally BitMap1.Free; BitMap2.Free; end; end;
| Добавлено @ 10:16 http://www.delphikingdom.com/asp/viewitem.asp?catalogid=1092&mode=print |