![]() |
Dateien (videos) wie sortiert hintereinander laden /aufrufen
Hallo
ich lade ein Video in mein Form so:
Delphi-Quellcode:
Ich habe aber 3 Videos : 01.avi, 01.avi, 03.avi
procedure TForm1.Button1Click(Sender: TObject);
begin MediaPlayer1.FileName:='01.avi'; MediaPlayer1.open; MediaPlayer1.Display:=panel1; MediaPlayer1.DisplayRect:=Panel1.ClientRect; MediaPlayer1.Play; end; Ich möchte 2 Buttons erstellen: Ein Button heisst "Nächste", lädt die Videos aufsteigend Ein Button heisst "Vorherige", lädt die Videos absteigend Hat jemand eine Idee? |
Re: Dateien (videos) wie sortiert hintereinander laden /aufr
Lad die Dateinamen in eine sortierte Stringliste.
|
Re: Dateien (videos) wie sortiert hintereinander laden /aufr
Zitat:
Aber wie genau :mrgreen: |
Re: Dateien (videos) wie sortiert hintereinander laden /aufr
Na, den ersten Teil hast Du ja schon (FindFirst/FindNext). Zur StringListe schau Dir mal die Property Sorted und die Methode Add() an.
|
Re: Dateien (videos) wie sortiert hintereinander laden /aufr
Taktaky ... gib mir bitte mal deine Adresse. Ich komm dann vorbei und bring dir programmieren bei ... :twisted: ... jeden Tag ne neue geistreiche Frage, das kann man sich echt nicht mehr mit anschauen.
|
Re: Dateien (videos) wie sortiert hintereinander laden /aufr
Zitat:
|
Re: Dateien (videos) wie sortiert hintereinander laden /aufr
Zitat:
Aber trotzdem ist nicht gut, da ich die Videos in einem Ordner separat anlegen möchte und das Objekt FileListBox hat leider bei mir keine Eigenschaft von "Directory" wo man den ordnernamen eintragen kann. Mit dem Code werden Ordner gefunden und aufgelistet. Ich möchte aber Keine Ordner sondern Files auflisten :
Delphi-Quellcode:
<>
procedure ListeDir(Path: string; FileList: TStrings);
var SR: TSearchRec; begin if FindFirst(Path + '*.*', faAnyFile, sr) = 0 then begin repeat if ((sr.Attr and faDirectory) = faDirectory) and (sr.Name <> '.') and (sr.Name <> '..') then begin FileList.Add(sr.Name); end; until FindNext(sr) <> 0; FindClose(sr); end; end; procedure TForm1.Button1Click(Sender: TObject); begin ListeDir('C:\Windows\', ListBox1.Items); end; |
Re: Dateien (videos) wie sortiert hintereinander laden /aufr
Hi taktaky,
anstatt Directory sollte Dir die Eigenschaft ![]() Angenommen Du willst den Ordner C:\Meine Programme\PlayList\ auslesen, dann schreibst Du unter Mask "C:\Meine Programme\PlayList\*.*" rein (ohne die "" natürlich). Danach werden in der FileListBox nur die Dateien anzeigt, die auch in diesem Ordner sind. |
Re: Dateien (videos) wie sortiert hintereinander laden /aufr
Zitat:
also PlayList\*.* statt C:\Meine Programme\PlayList\*.* <> |
Re: Dateien (videos) wie sortiert hintereinander laden /aufr
Setz doch Directory zur Laufzeit.
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin FileListBox1.Directory := 'C:\Taktaky'; end; |
Re: Dateien (videos) wie sortiert hintereinander laden /aufr
Zitat:
Bei mir ist C:\ ... bei andern kann D:\.. :gruebel: <> |
Re: Dateien (videos) wie sortiert hintereinander laden /aufr
Das war doch nur ein Beispiel, Mensch. Zur Not kannst Du doch vorher das Programmverzeichnis oder was auch immer ermitteln und das dann eintragen.
|
Re: Dateien (videos) wie sortiert hintereinander laden /aufr
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin FileListBox1.Mask:= IncludeTrailingPathDelimiter(ExtractFilePath(Application.Exename)) + '*.*'; end; |
Re: Dateien (videos) wie sortiert hintereinander laden /aufr
Zitat:
:firejump: nun funktioniert, sowohl mit meinem Code, was Deddy vorgeschalgen hat, als auch von Muhkuh
Delphi-Quellcode:
Danke für beide ;)
procedure TForm1.FormCreate(Sender: TObject);
begin FileListBox1.Directory := ExtractFilePath(ParamStr(0)); // und in mask auch "Ordnername\*.*" eingeben // oder so: FileListBox2.Mask:= IncludeTrailingPathDelimiter(ExtractFilePath(Application.Exename)) + 'Ordnername\*.*'; end; <> |
Re: Dateien (videos) wie sortiert hintereinander laden /aufr
Es geht weiter :mrgreen:
Nun habe ich 2 Buttons um die Videos (Video-Namen in der Liste) zu wählen (Nächste und Vorherige):
Delphi-Quellcode:
Wie soll nun der Code lauten?procedure TForm1.NaechsteClick(Sender: TObject); begin FileListBox1.ItemIndex:=FileListBox1.ItemIndex+1 end; procedure TForm1.VorherigeClick(Sender: TObject); begin FileListBox1.ItemIndex:=FileListBox1.ItemIndex -1; end; Das ausgewählte Video in der FileListBox (FileListBox1.ItemIndex) soll aufgerufen werden . Aber wie?
Delphi-Quellcode:
---//MediaPlayer1.FileName:='01.avi'; MediaPlayer1.FileName:=???; MediaPlayer1.open; MediaPlayer1.Display:=panel1; MediaPlayer1.DisplayRect:=Panel1.ClientRect; MediaPlayer1.Play; |
Re: Dateien (videos) wie sortiert hintereinander laden /aufr
Delphi-Quellcode:
FileListBox1.Items[FileListBox1.ItemIndex]
|
Re: Dateien (videos) wie sortiert hintereinander laden /aufr
[delphi]MediaPlayer1.FileName := FileListBox.Items[FileListBox.ItemIndex]; [delphi]
Oder sowas in der Art ;) @ :twisted: Detlef! :mrgreen: |
Re: Dateien (videos) wie sortiert hintereinander laden /aufr
Liste der Anhänge anzeigen (Anzahl: 1)
Oh vielen Dank!
Nun funktioniert noch besser :mrgreen: Was nun fehlt ist nur den Ordner mit seinem Inhalt (videos) an exe oder in eine dll binden und dann die Videos (Daten) von dort auslesen <.> |
Re: Dateien (videos) wie sortiert hintereinander laden /aufr
|
Re: Dateien (videos) wie sortiert hintereinander laden /aufr
Zitat:
Teil 1 kenne ich bereit, wie man .Res erstellt und dann an exe bindet Aber wie man einen Ordner als Archiv an exe packt und wieder bei Laufzeit irgendwo entpackt, gibt es keine Erklärung! <> |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:28 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