![]() |
Bild wird nicht angezeigt
Hi Leute !
Ich verwende folgenden Code.. kann mir jemand von euch sagen, warum mein Bild nicht angezeigt wird? Eine Fehlermeldung gibt es nicht.
Delphi-Quellcode:
TEinObjekt ist folgendermaßen deklariert:
implementation
{$R *.DFM} procedure TForm1.FormCreate(Sender: TObject); begin // Objekt erzeugen Objekt := TEinObjekt.Create(Owner); // Bild in Objekt laden if FileExists('C:\tmp2delt.bmp') then Objekt.LadeBild('C:\tmp2delt.bmp') else Showmessage('Datei existiert nicht'); // Bild des Objektes auf der Form ausgeben PaintBox1.Canvas.Draw(1,1,Objekt.GetPicture); PaintBox1.Canvas.Draw(1,1,Objekt.GetPicture); end; procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin // Objekt freigeben Objekt.Free; end;
Delphi-Quellcode:
interface
uses Classes, Graphics; type TEinObjekt = class(TComponent) private Bild: TBitmap; PosX: Integer; PosY: Integer; public constructor Create(Owner: TComponent);override; destructor Destroy;override; procedure LadeBild(Pfad: String); function GetPicture: TBitmap; end; implementation constructor TEinObjekt.Create; begin inherited Create(Owner); Bild := TBitmap.Create; end; destructor TEinObjekt.Destroy; begin Bild.Free; inherited Destroy; end; procedure TEinObjekt.LadeBild; begin Bild.LoadFromFile(Pfad); end; function TEinObjekt.GetPicture; begin result := Bild; end; |
Re: Bild wird nicht angezeigt
Ein Hallöle von
![]() Erstmal, doppelt hält nicht bessere. :wink: Zitat:
Besser ist es im OnPaint-Ereignis der PaintBox aufgehoben, weil dort ja zum neuzeichnen der PaintBox aufgefordert wird.
Delphi-Quellcode:
Alternativ könnte es aber auch noch im OnPaint-Ereignis des Formulars stehen.
Procedure TForm1.FormCreate(Sender: TObject);
Begin // Objekt erzeugen Objekt := TEinObjekt.Create(Owner); // Bild in Objekt laden If FileExists('C:\tmp2delt.bmp') Then Objekt.LadeBild('C:\tmp2delt.bmp') Else Showmessage('Datei existiert nicht'); End; Procedure TForm1.PaintBox1Paint(Sender: TObject); Begin // Bild des Objektes auf der Form ausgeben PaintBox1.Canvas.Draw(1,1,Objekt.GetPicture); End;
Delphi-Quellcode:
http://www.delphipraxis.net/images/common/divider.jpg
Procedure TForm1.FormCreate(Sender: TObject);
Begin // Objekt erzeugen Objekt := TEinObjekt.Create(Owner); // Bild in Objekt laden If FileExists('C:\tmp2delt.bmp') Then Objekt.LadeBild('C:\tmp2delt.bmp') Else Showmessage('Datei existiert nicht'); End; Procedure TForm1.FormCreate(Sender: TObject); Begin // Bild des Objektes auf der Form ausgeben PaintBox1.Canvas.Draw(1,1,Objekt.GetPicture); End; ![]() ![]() ![]() |
Re: Bild wird nicht angezeigt
Ich danke Dir Himitsu !
:roll: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:51 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