Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi TPicture - Liste der unterstützen Dateiformate (https://www.delphipraxis.net/123598-tpicture-liste-der-unterstuetzen-dateiformate.html)

Neutral General 5. Nov 2008 00:05


TPicture - Liste der unterstützen Dateiformate
 
Hi,

Intern verwendet TPicture ja eine TFileformatslist (= class(TList)) in der alle registrierten Dateiformatendungen inkl TGraphicklasse etc gespeichert werden.

Problem ist nur, dass sich diese TFileformatslist Variable in der alles gespeichert wird im implementation Teil der Graphics.pas befindet und ich scheinbar auch sonst von außerhalb keinen Zugriff darauf habe.

Gibt es trotzdem irgendwie eine Möglichkeit sich alle von TPicture unterstützten Dateitypen (Endungen!) auflisten zu lassen?

Gruß
Neutral General

olee 5. Nov 2008 01:12

Re: TPicture - Liste der unterstützen Dateiformate
 
Wenn du eine etsprechende Version von Delphi hast (z.B. Turbo Delphi) dann ist die source dabei.

Ich würde einfach mal kucken, woher der Inhalt dieser Liste kommt :wink:


MFG

Neutral General 5. Nov 2008 01:18

Re: TPicture - Liste der unterstützen Dateiformate
 
Jo ich hab die Sourcen und ich weiß auch woher die Einträge kommen. Nämlich wenn man TPicture.RegisterGraphicFormat (oder so) aufruft. Allerdings komme ich an die Liste selbst soweit ich das sehe nicht ran, weil die wie gesagt im Implementation Teil der Graphics Unit deklariert ist.

olee 5. Nov 2008 01:23

Re: TPicture - Liste der unterstützen Dateiformate
 
Wofür brauchst du die Liste denn?

Vllt. gibt es ja eine andere Möglichkeit?

Neutral General 5. Nov 2008 01:24

Re: TPicture - Liste der unterstützen Dateiformate
 
Ich will per FindFirst/FindNext/FindClose alle Dateien eines Ordners in eine Stringliste laden, die in mein TImage ladbar sind.

olee 5. Nov 2008 01:49

Re: TPicture - Liste der unterstützen Dateiformate
 
Dann machs dir doch leich und nimm alle, wo du weiß das es loader für TPicture gibt
(also sowas wie dds kannst du direkt weglassen).

Dann kannst du einfach probieren, die Bilder zu öffnen.

Gibts ne Exeption, wird das Format nicht unterstützt.

Das kann man noch so erweitern, dass er asu den gefundenen dateien eines
von jedem Dateityp raussucht, und diese entsprechend testet und die Liste
der gefundenen Dateien danach aktualisiert.

Das würde sogar erlauben, später eigene Loader u.A. einzubauen, die das Bild selbst
laden und es Im TPicture ablegen.

:thumb:

MSFG

Larsi 5. Nov 2008 05:47

Re: TPicture - Liste der unterstützen Dateiformate
 
du kannst auch einen openpicturedialog nehmen. da steht im filter alles drinnen was das image öffnen kann.

Medium 5. Nov 2008 06:12

Re: TPicture - Liste der unterstützen Dateiformate
 
Der OpenPictureDialog war ein guter Ort um genau hinzuschauen. Dort wird die Funktion GraphicFilter() der Unit Graphics verwendet, und diese wiederum nutzt dies:
Delphi-Quellcode:
function GetFileFormats: TFileFormatsList;
Und dort bekommst du dann eine Referenz auf die Liste in der Graphics-Unit.

OlloSoft 26. Feb 2010 10:09

Re: TPicture - Liste der unterstützen Dateiformate
 
Zitat:

Zitat von Medium
Der OpenPictureDialog war ein guter Ort um genau hinzuschauen. Dort wird die Funktion GraphicFilter() der Unit Graphics verwendet, und diese wiederum nutzt dies:
Delphi-Quellcode:
function GetFileFormats: TFileFormatsList;
Und dort bekommst du dann eine Referenz auf die Liste in der Graphics-Unit.

Drivel, eben diese Funktion ist privat, Du kannst sie von außerhalb der Unit nicht aufrufen.
Die einzige Möglichkeit wäre diesen Filtersting zu parsen, wenn ich bedenke, dass die Extensions ordentlich in einer Liste vorhanden sind, sträuben sich mir allerdings die Haare. Da haben die Damen und Herren aus dem Hause Borland, CodeGear, Embarcadigenskirchen, oder wo Delphi demnächst (wenn überhaupt noch) hergestellt wird, mal wieder ganze Arbeit geleistet.

Noch ein Tipp: Kopiere die Datei Graphics.pas, füge dem Interface-Abschnitt die Forward-Deklaration für GetFileFormats hinzu und füge diese geänderte Datei Deinem Projekt hinzu.

mirage228 26. Feb 2010 10:13

Re: TPicture - Liste der unterstützen Dateiformate
 
Delphi-Referenz durchsuchenGraphicsFileMask, Delphi-Referenz durchsuchenGraphicsFilter aus der Unit Graphics - Das funktioniert ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:48 Uhr.
Seite 1 von 2  1 2      

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