Thema: Delphi Image Problem???

Einzelnen Beitrag anzeigen

TStringlist

Registriert seit: 1. Dez 2003
360 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: Image Problem???

  Alt 16. Nov 2005, 15:08
So eine PaintBox ist eigentlich bloß mehr für den eigentlichen Screen-Output selbst gedacht, und eignet eher weniger für ein anfängliches nur Parken eines Bildes. So ein einfaches TBitmap ist dafür also besser geeignet. Das erzeugst und lädst du dann zuerst noch im Creater der Form:

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
const AFileName = 'blablabla';
begin
  FBitmap := TBitmap.Create;
  FBitmap.LoadFromFile(AFileName);
end;
Dann ersetzt du in deinem letzten Post einfach die Paintbox durch dieses FBitmap und schon müsste es eigentlich funktionieren. Auch ein Image1.Repaint nach dem "BitBlt" möglichst nicht vergessen.


(Aber wie gesagt: Die Benutzung einer ImageList wäre in deiner Situation wohl das einfachste. Nötig gewesen wäre dann nämlich insgesamt immer nur so etwas:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject); // z.B. fürs Anschalten des LED
begin
  Image1.Canvas.FillRect(Image1.Canvas.ClipRect); // ~ Image.clear
  ImageList1.GetBitmap(0,Image1.Picture.Bitmap);
end;

bzw.

procedure TForm1.Button2Click(Sender: TObject); // z.B. fürs Ausschalten des LED
begin
  Image1.Canvas.FillRect(Image1.Canvas.ClipRect); // ~ Image.clear
  ImageList1.GetBitmap(1,Image1.Picture.Bitmap);
end;
Allerdings muss man ja das "BitBlt" in jedem Falle auch einmal kennen gelernt haben --> als eigene Ausrede, nicht sofort die ImageList erwähnt zu haben )
MfG (& Thx ggf.)
  Mit Zitat antworten Zitat