![]() |
Fehlermeldung beim Erzeugen eines BMP
Wenn ich ein BMP von meiner TreeView Komponente erzeugen will,
dann kommt immer folgende Fehlermeldung: Range check error Allerdings taucht das Phaenomaen nicht immer auf. machmal klappts, manchmal nicht. Woran liegt das. |
Re: Fehlermeldung beim Erzeugen eines BMP
Es wäre natürlich praktisch, wenn du uns eventuell mal zeigen würdest, wie du das BitMap erzeugst.
Denn zumindestens ich bin noch kein Hellseher und kann so nur ganz schwer auf den Fehler zeigen ._. Mit freundlichen Grüßen dat kleine Engelchen ^^ |
Re: Fehlermeldung beim Erzeugen eines BMP
jop soory, war bloed von mir.
Delphi-Quellcode:
procedure TForm1.PrintToFile1Click(Sender: TObject);
var bmp: TBitmap; begin bmp := TBitmap.Create; try bmp.Width := KADaoDBTreeView1.Width; bmp.Height := KADaoDBTreeView1.Height; bmp.Canvas.Lock; try KADaoDBTreeView1.Perform(WM_PRINT, bmp.Canvas.Handle, PRF_CHILDREN or PRF_CLIENT or PRF_NONCLIENT); finally bmp.Canvas.UnLock; bmp.SaveToFile('tree.bmp'); Form2.Image1.Picture.LoadFromFile('tree.bmp') end; finally bmp.Free; end; Form2.Visible := True; end;
Delphi-Quellcode:
procedure TForm1.DrawImage(Canvas: TCanvas; DestRect: TRect; ABitmap: TBitmap);
var Header, Bits: Pointer; HeaderSize: DWORD; BitsSize: DWORD; begin GetDIBSizes(ABitmap.Handle, HeaderSize, BitsSize); Header := AllocMem(HeaderSize); Bits := AllocMem(BitsSize); try GetDIB(ABitmap.Handle, ABitmap.Palette, Header^, Bits^); StretchDIBits(Canvas.Handle, DestRect.Left, DestRect.Top, DestRect.Right, DestRect.Bottom, 0, 0, ABitmap.Width, ABitmap.Height, Bits, TBitmapInfo(Header^), DIB_RGB_COLORS, SRCCOPY); finally FreeMem(Header, HeaderSize); FreeMem(Bits, BitsSize); end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:49 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz