Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Bild in Delphi öffnen/anzeigen (https://www.delphipraxis.net/95689-bild-delphi-oeffnen-anzeigen.html)

Lill Jens 12. Jul 2007 09:22

Re: Bild in Delphi öffnen/anzeigen
 
Zitat:

Zitat von Matze
Den Code habe ich bereits geschrieben, also sollte es funktionieren.


Muss also dann der Code so aussehen?

Delphi-Quellcode:
procedure TForm1.Label72Click(Sender: TObject);
begin
if OpenPictureDialog1.Execute then
  Image3.LoadFromFile(OpenPictureDialog1.Filename)

end;
Allerdings kommt dann die Fehlermeldung:

Delphi-Quellcode:
[Fehler] u_Verwaltung.pas(5245): Undefinierter Bezeichner: 'LoadFromFile'

Sry für meine dummen Fragen bin eben noch neu auf dem Gebiet...

mkinzler 12. Jul 2007 09:24

Re: Bild in Delphi öffnen/anzeigen
 
Welchen Typ hat image3?

Blackheart 12. Jul 2007 09:25

Re: Bild in Delphi öffnen/anzeigen
 
Delphi-Quellcode:
Image.Picture.LoadFromFile();

DeddyH 12. Jul 2007 09:25

Re: Bild in Delphi öffnen/anzeigen
 
Image3.Picture.LoadFromFile(OpenPictureDialog1.Filename)

//Edit: *Oops*, da war jemand schneller.

Lill Jens 12. Jul 2007 09:29

Re: Bild in Delphi öffnen/anzeigen
 
Zitat:

Zitat von DeddyH
Image3.Picture.LoadFromFile(OpenPictureDialog1.Filename)


Optimal Ihr seid die Besten

Danke für euere Hilfe ;)

Sandy123 29. Feb 2012 13:51

AW: Bild in Delphi öffnen/anzeigen
 
habe eine frage, und zwar wie kann ich ein externes bild in delphi als hintergrundbild einbinden? :)
mfg philip

DeddyH 29. Feb 2012 13:56

AW: Bild in Delphi öffnen/anzeigen
 
Der ganz einfache Weg: pack ein TImage auf das Formular, Align auf alClient, und lad da wie gezeigt das Bild rein.

mkinzler 29. Feb 2012 14:03

AW: Bild in Delphi öffnen/anzeigen
 
Wenn die JVCL verwendet wird: TJvBackground

Bummi 29. Feb 2012 14:44

AW: Bild in Delphi öffnen/anzeigen
 
wenn die Jedi's noch nicht verwendet werden, dann doch lieber etwas in der Art s.u. um den Kram draussen zu halten.
Delphi-Quellcode:
  private
    FPicture:TPicture;
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form2: TForm2;

implementation
uses pngimage,jpeg;
{$R *.dfm}

procedure TForm2.FormCreate(Sender: TObject);
begin
    FPicture:=TPicture.Create;
    FPicture.LoadFromFile('C:\Icons\IconCollection\ix_bd_all\128x128\shadow\address_book.png');
end;

procedure TForm2.FormDestroy(Sender: TObject);
begin
   FreeAndNil(FPicture);
end;

procedure TForm2.FormPaint(Sender: TObject);
  Function Faktor:Double;
    begin
       Result := ClientWidth / FPicture.Graphic.Width;
       if (ClientHeight / FPicture.Graphic.Height) < Result then Result := ClientHeight / FPicture.Graphic.Height;
    end;
begin
   Canvas.StretchDraw(Rect(Round(ClientWidth - (Faktor * FPicture.Graphic.Width) ) div 2
                          ,Round(ClientHeight - (Faktor * FPicture.Graphic.Height) ) div 2
                          ,ClientWidth - Round(ClientWidth - (Faktor * FPicture.Graphic.Width) ) div 2
                          ,ClientHeight - Round(ClientHeight -(Faktor * FPicture.Graphic.Height) ) div 2
                          )
                          ,FPicture.Graphic);
end;

procedure TForm2.FormResize(Sender: TObject);
begin
  invalidate;
end;

DeddyH 29. Feb 2012 14:50

AW: Bild in Delphi öffnen/anzeigen
 
Effizienter wäre es aber, Faktor als Variable zu deklarieren und einmalig zu berechnen. Dann muss nicht bei jedem OnPaint 4 Mal die Funktion durchlaufen werden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:43 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz