![]() |
Verschiedene Komponente für gleichen zweck
wenn ich einen pfad mit opendialog erschliese und den dann öffnen und wiedergebe möchte ich das zb. *.mp3 mit einer komponente geöffnent wird und *.avi mit einer anderen komponente hat einer ne idee wie man das schaffen kann?
|
Re: Verschiedene Komponente für gleichen zweck
hi, so kannst du die erweiterung der gewählten datei ermitteln:
Delphi-Quellcode:
Aenogym
if opendialog1.execute then
var ext: string; begin ext := extractfileext(opendialog1.filename); if ext = 'mp3' then //als mp3 öffen if ext = 'avi' then //als avi öffen end; |
Re: Verschiedene Komponente für gleichen zweck
Moin!
So klappt's besser:
Delphi-Quellcode:
Da ExtractFileExt() den Punkt mitliefert.
If OpenDialog1.Execute Then
Var lExt: String; Begin lExt := ExtractFileExt(OpenDialog1.Filename); if lExt = '.mp3' then //als mp3 öffen if lExt = '.avi' then //als avi öffen End; MfG Muetze1 |
Re: Verschiedene Komponente für gleichen zweck
ihr solltet aber beachten das die Endung auch ".mP3" sein kann. also sollte die zeile eher
Delphi-Quellcode:
heißen
lExt := AnsiLowercase(ExtractFileExt(OpenDialog1.Filename));
|
Re: Verschiedene Komponente für gleichen zweck
hmmm klappt teilweise :/ hab einfach mal versucht mit paar befehlen wie zb
if lExt = '.wav' then //als wav öffen checked := true; das klappt die einzelnen werden genutzt aber beim abspielen der lieder werden beide komponente zum abspielen genutzt :/ |
Re: Verschiedene Komponente für gleichen zweck
Hallo,
schau Dir doch einmal die Eigenschaften Filter und FilterIndex des Open-/ Savedialoges in der Hilfe an. |
Re: Verschiedene Komponente für gleichen zweck
Zitat:
|
Re: Verschiedene Komponente für gleichen zweck
Zitat:
Diese Unit hatte eine Funktion, der man einen Filenamen übergab und dann eine Konstante zurückbekam, z.B. so:
Delphi-Quellcode:
gibts sowas eigentlich für delphi ???
case CheckFileFormat(FFileName) of
FF_WAVE: machwasdamit; FF_AVI: machwasdamit; FF_MP3: machwasdamit; FF_UNKNOWN: machnichtsdamit; ... end; wäre praktisch... [edit] :idea: hab mich geirrt, war nur für Packer-Formate diese Unit. Diese Unit hies "IDPacker.pas", man konnte damit so um die 100 Packer identifizieren... wäre aber trotzdem ne geniale sache, wenns sowas für sämmtliche Formate gäbe! :thumb: [/edit] |
Re: Verschiedene Komponente für gleichen zweck
Zitat:
Code:
Angenommen Du hast folgende Filterliste
filterindex wählt aus welche filter genutzt werden
Code:
Dann kannst Du wie folgt arbeiten
Wav (*.wav) | *.wav // FilterIndex 0
Mp3 (*.mp3) | *.mp3 // FilterIndex 1 Wmv (*.wmv) | *.wmv // FilterIndex 2
Delphi-Quellcode:
If OpenDialog.Execute then
begin Case OpenDialog.FilterIndex of 0 : OpenWavFile; 1 : OpenMp3File; 2 : OpenWmvFile; end; end; |
Re: Verschiedene Komponente für gleichen zweck
die lösung hat nur einen hacken wenn ich ein index eintrage der wav und avi enthällt
aus diesem grund wollte ich das der dateiname geprüft wird und dann entschieden wird welche funktion ausgeführt wird.... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:33 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