AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Ganz einfacher MP3 Player

Ganz einfacher MP3 Player

Ein Thema von Blackheart · begonnen am 24. Mai 2008 · letzter Beitrag vom 27. Okt 2008
Antwort Antwort
Seite 2 von 4     12 34   
Blackheart
Registriert seit: 4. Mai 2005
Hallo Leute !
Hab mal wieder was zum testen wenn ihr möchtet.
Ein ganz simpler MP3 Player.
Dateien per Dialog hinzufügen.
Ordner & Unterordner(per Drag & Drop hinzufügen.
Freu mich wie immer über Anregungen oder auch Kritik.
Kein Installer oder Registry eintrag.
Zip und Screenshot anbei cr.300 kb.
Miniaturansicht angehängter Grafiken
screenshot_752.jpg  
Angehängte Dateien
Dateityp: zip m.player_1.0_624.zip (374,9 KB, 75x aufgerufen)
Blackheart
 
Benutzerbild von Matze
Matze

 
Turbo Delphi für Win32
 
#11
  Alt 25. Mai 2008, 16:58
Zitat von BullsEye:
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

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

if ListBox1.Count > 0 then // bzw. = 0 Grüße
  Mit Zitat antworten Zitat
BullsEye

 
Delphi 7 Personal
 
#12
  Alt 25. Mai 2008, 21:08
[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.
Marc
  Mit Zitat antworten Zitat
Blackheart

 
Delphi 7 Enterprise
 
#13
  Alt 26. Mai 2008, 14:59
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.
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

 
Delphi 7 Enterprise
 
#14
  Alt 26. Mai 2008, 15:08
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...
Martin
  Mit Zitat antworten Zitat
Blackheart

 
Delphi 7 Enterprise
 
#15
  Alt 26. Mai 2008, 16:05
Zitat von lbccaleb:
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
  Mit Zitat antworten Zitat
1234588
 
#16
  Alt 26. Mai 2008, 16:08
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.
  Mit Zitat antworten Zitat
Blackheart

 
Delphi 7 Enterprise
 
#17
  Alt 31. Mai 2008, 06:33
Hab noch zwei Bugs gefunden und beseitigt.
Datei oben ersetzt.
  Mit Zitat antworten Zitat
GeMo

 
Delphi 7 Professional
 
#18
  Alt 31. Mai 2008, 10:21
wie sieht es denn mit den von mir gemachten vorschlägen zur verbesserung der benutzerfreundlichkeit aus?


hier nocheinmal was ich geschrieben habe:

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
  Mit Zitat antworten Zitat
Macci
 
#19
  Alt 31. Mai 2008, 18:45
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.
  Mit Zitat antworten Zitat
Blackheart

 
Delphi 7 Enterprise
 
#20
  Alt 31. Mai 2008, 19:10
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 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.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:12 Uhr.
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