![]() |
Problem mit TOpenPictureDialog
Hallo!
In meiner Klasse soll eine Methode Foto_laden "eingebaut" werden. Für die Auswahl hab ich an einen OpenPictureDialog gedacht. Ich habe jedoch keine Ahnung was ich als Parameter in der Create-Anweisung angeben muß.
Delphi-Quellcode:
MfG
procedure TKlasse.Foto_laden;
var OpenDialog : TOpenPictureDialog; begin OpenDialog.Create(AOwner); if OpenDialog.Execute then Foto.LoadFromFile(OpenDialog.FileName); OpenDialog.Free; end; Prelude247 |
Re: Problem mit TOpenPictureDialog
Ich fürchte so ... der Rückgabewert von Create ist wichtig ^^
Delphi-Quellcode:
OpenDialog := TOpenPictureDialog.Create(Form1);
|
Re: Problem mit TOpenPictureDialog
Danke himitsu, für die schnelle Antwort!
Delphi-Quellcode:
Funktioniert nicht, kann man den OpenPictureDialog nicht verwenden wenn man keine Form hat!?
OpenDialog := TOpenPictureDialog.Create(Form1);
MfG Prelude247 |
Re: Problem mit TOpenPictureDialog
Hallo,
kann man.
Delphi-Quellcode:
oder
OpenDialog:=TOpenPictureDialog.Create(nil);
Delphi-Quellcode:
OpenDialog:=TOpenPictureDialog.Create(Application);
|
Re: Problem mit TOpenPictureDialog
Ich habe jetzt beide Varianten getestet.
Bei beiden kann ohne Fehler kompiliert werden, aber der Dialog wird nicht angezeigt. MfG Prelude247 |
Re: Problem mit TOpenPictureDialog
Wenn ich mich recht erinnere, dann wird intern auf/über das übergebene lternfenster auf alle Fenster der Anwendung zugegriffen und diese wärend der Anzeige des Dialogs deaktivert ... eventuell gibt's ja ja'n Problemchen, wenn dat fehlt?
Ansonsten bleibt noch selber machen ... also über GetOpenFileName (WinAPI), allerdings mußt du da die Anzeige des Bildes selber machen. Ich häng gerade (oder besser gesagt immernoch) auch an solchen erweiterten non-VCL-Dialogen und kann dir sagen einfach wird's nicht, aber ich hoffe es sieht irgendwann mal ordentlich aus ._. |
Re: Problem mit TOpenPictureDialog
Zitat:
Delphi-Quellcode:
HTH, Uli.
program Project12;
{$APPTYPE CONSOLE} uses jpeg, ExtDlgs; var OpenDialog : TOpenPictureDialog; begin OpenDialog := TOpenPictureDialog.Create(nil); if OpenDialog.Execute then Writeln(OpenDialog.FileName) else Writeln('(nix)'); OpenDialog.Free; Readln; end. |
Re: Problem mit TOpenPictureDialog
So, ich bins nochmal.
Also, ich hab den Quelltext von Uli einfach mal in meine Klasse kopiert und an meine Bedürfnisse angepasst. Kein Fehler beim kompilieren und auch kein Fehler bei der Ausführung. Ich habe zwar keine Ahnung wo der Fehler war, aber jetzt funktioniert es. Danke an alle die geholfen haben. Bis zum nächsten Problem. :-D Prelude247 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:39 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