Delphi-PRAXiS
Seite 2 von 4     12 34      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Ganz einfacher MP3 Player (https://www.delphipraxis.net/114411-ganz-einfacher-mp3-player.html)

Matze 25. Mai 2008 16:58

Re: Ganz einfacher MP3 Player
 
Zitat:

Zitat von BullsEye
Delphi-Quellcode:
IF ListBox1.ItemIndex <= -1 THEN BEGIN

Diese Überprüfung ist falsch. Der ItemIndex ist auch "-1", wenn bei einer gefüllten ListBox kein Eintrag selektiert ist. Und kleiner als "-1" kann der ItemIndex sowieso nicht werden. Besser wäre hier

Delphi-Quellcode:
if ListBox1.Items.Count > 0 then // bzw. = 0
oder kürzer müsste auch das gehen:

Delphi-Quellcode:
if ListBox1.Count > 0 then // bzw. = 0
Grüße

BullsEye 25. Mai 2008 21:08

Re: Ganz einfacher MP3 Player
 
[quote="1234588"]
sinnvoll waere folgendes:
Delphi-Quellcode:
if ListBox1.ItemIndex <= -1 then
  Dialog();
if ListBox1.ItemIndex <= -1 then
  Abpielen();
Das wäre ganz und gar nicht sinnvoll, da man dann 2x auf Play klicken müsste, um ein Titel abzuspielen. 1 klick: Laden 2 Klick: Abspielen.
Das war schon recht sinnvoll ausgedacht.

hm Matze, ok. Danke für die Verbesserung, war mir da nicht ganz so sicher.
Aber ich denke, der Sinn meiner Idee wurde verstanden.

Blackheart 26. Mai 2008 14:59

Re: Ganz einfacher MP3 Player
 
Danke Leute fürs testen hab einige Vorschläge übernommen und einige Fehler behoben.
- Fehler beim löschen von Playlisteinträgen behoben.
- Ist kein Eintrag in der Playlist öffnet sich der Opendialog.
Exe oben erneuert.

lbccaleb 26. Mai 2008 15:08

Re: Ganz einfacher MP3 Player
 
Zitat:

Zitat von Blackheart
Danke Leute fürs testen hab einige Vorschläge übernommen und einige Fehler behoben.
- Fehler beim löschen von Playlisteinträgen behoben.
- Ist kein Eintrag in der Playlist öffnet sich der Opendialog.
Exe oben erneuert.

ok, jetzt geht alles, bis auf eins^^
wenn man jetzt auf play drückt (keine datei wird gespielt) und eine datei auswählt, dann erscheint die weder in der play list noch wird sie abgespielt...

Blackheart 26. Mai 2008 16:05

Re: Ganz einfacher MP3 Player
 
Zitat:

Zitat von lbccaleb
Zitat:

Zitat von Blackheart
Danke Leute fürs testen hab einige Vorschläge übernommen und einige Fehler behoben.
- Fehler beim löschen von Playlisteinträgen behoben.
- Ist kein Eintrag in der Playlist öffnet sich der Opendialog.
Exe oben erneuert.

ok, jetzt geht alles, bis auf eins^^
wenn man jetzt auf play drückt (keine datei wird gespielt) und eine datei auswählt, dann erscheint die weder in der play list noch wird sie abgespielt...

Stimmt habs geändert danke :thumb:

1234588 26. Mai 2008 16:08

Re: Ganz einfacher MP3 Player
 
Zitat:

Zitat von BullsEye
Das wäre ganz und gar nicht sinnvoll, da man dann 2x auf Play klicken müsste, um ein Titel abzuspielen. 1 klick: Laden 2 Klick: Abspielen.
Das war schon recht sinnvoll ausgedacht.

ich hab einen kleinen schoenheitsfehler in der zweiten anweisung. natuerlich soll geprueft werden, ob ein eintrag existiert, falls ja soll abgespielt werden. das war aber auch durch meinen kleinen kommentar ergruendlich.
jetzt sag mir mal was daran nicht sinnvoll ist?
bei deinem snippet wird der dialog aufgerufen und egal was passiert abgespielt. das ist als ob du die augen schliesst und anfaengst zu rennen, irgendwann wirst du gegen eine wand kollidieren.

das zweimal ueberprueft werden muss ist bloed, ich weiß. aber blind abspielen ist auch nicht die genialste loesung.
-> fehler vermeiden wo es nur moeglich ist

man sollte das zweite statement sogar mit einem FileExists() ergaenzen, sodass auch sichergestellt wird, das das hinzugefuegte auch eine datei ist.

Delphi-Quellcode:
if ListBox1.Count <= 0 then
  Dialog();
if (ListBox1.Count > 0) and (FileExists(fName)) then
  Abpielen();
in dem fall koennte man sogar auf das zweite ueberpruefen der listbox verzichten

ich hab das zeitweise anders geloest. ich lies beim hinzufuegen die datei rendern. je nach dem ob es erfolgreich war, wird die datei hinzugefuegt oder eben nicht. problem an der sache ist aber, das das staendige rendern nicht gerade perfomant ist.

Blackheart 31. Mai 2008 06:33

Re: Ganz einfacher MP3 Player
 
Hab noch zwei Bugs gefunden und beseitigt.
Datei oben ersetzt.

GeMo 31. Mai 2008 10:21

Re: Ganz einfacher MP3 Player
 
wie sieht es denn mit den von mir gemachten vorschlägen zur verbesserung der benutzerfreundlichkeit aus?
:)

hier nocheinmal was ich geschrieben habe:

Zitat:

Zitat von GeMo
- warum kann man keine einzelnen dateien per drag&drop hinzufügen? ich denke das wäre noch ganz gut wenn du das implementierst

- man sollte noch die einstellungen die man gemacht hat speichern können, bzw er sollte es vllt beim schliessen automatisch speichern. sonst muss man immer alles neu einstellen wenn man den player öffnet

- playliste: es wäre ganz gut wenn man playlisten in deinen player laden könnte und auch selbst erstellte abspeichern könnte. vllt beschränkst du dich da nur auf *.mnu und *.pls playlisten! die sind nicht allzuschwer zu verstehen :)

falls du hilfe bei den playlisten brauchst: da könnte ich dir helfen.. hab schonmal einen m3u und pls import/export programmiert..

greetz

Macci 31. Mai 2008 18:45

Re: Ganz einfacher MP3 Player
 
Am sinnvollste wäre es meiner Meinung nach so:

Zitat:

if (ListBox1.Count > 0) or Dialog() then
Abspielen();
, wobei Dialog() eine Funktion ist, die auf einen bool'schen Wert abbildet. Auf true, wenn der Nutzer eine Datei geöffnet hat, auf false, sonst. Für diesen Code darf der Compilerschalter {$B+} nicht aktiviert sein, was normal auch nicht der Fall ist.

@1234588:

Eine Überprüfung mit FileExists würde ich nicht so gut finden, weil, wenn der Nutzer aus Versehen einen ungültigen Dateinamen angegeben hat, er dann keine Fehlermeldung erhält, sondern einfach nichts passiert. Besser wäre es z.B. im OpenDialog gleich zu fordern, dass die Datei existieren muss (das kann man ja so einstellen).
Ansonsten sollte dem Nutzer ruhig eine Fehlermeldung um die Ohren genauen werden, was ja auch z.B. passieren kann, wenn die Datei vorhanden ist, aber der Nutzer nicht über die nötigen Rechte verfügt, darauf zuzugreifen.


@BullsEye:

Immer Abspielen, selbst wenn der Nutzer im OpenDialog auf Abbrechen klickt, halte ich übrigens - genau wie 1234588 - auch nicht für sinnvoll.

Blackheart 31. Mai 2008 19:10

Re: Ganz einfacher MP3 Player
 
Zitat:

Zitat von GeMo
wie sieht es denn mit den von mir gemachten vorschlägen zur verbesserung der benutzerfreundlichkeit aus?
:)

hier nocheinmal was ich geschrieben habe:

Zitat:

Zitat von GeMo
- warum kann man keine einzelnen dateien per drag&drop hinzufügen? ich denke das wäre noch ganz gut wenn du das implementierst

- man sollte noch die einstellungen die man gemacht hat speichern können, bzw er sollte es vllt beim schliessen automatisch speichern. sonst muss man immer alles neu einstellen wenn man den player öffnet

- playliste: es wäre ganz gut wenn man playlisten in deinen player laden könnte und auch selbst erstellte abspeichern könnte. vllt beschränkst du dich da nur auf *.mnu und *.pls playlisten! die sind nicht allzuschwer zu verstehen :)

falls du hilfe bei den playlisten brauchst: da könnte ich dir helfen.. hab schonmal einen m3u und pls import/export programmiert..

greetz

Einzelne Dateien oder merfachauswahl über Dialog finde ich persönlich
Benutzerfreundlicher.
Einstellungen speichern ist kein Thema, werd ich mal tun.
Playlisten mal schaun, wie gesagt sollte nur ein ganz einfacher Player werden.
Hab noch neue Bugs gefunden beim löschen von Einträgen, kommt dann demnächst.
danke fürs Testen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:09 Uhr.
Seite 2 von 4     12 34      

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