Aktuelle Zeit: 15.10.2019 18:42

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]




Ein neues Thema erstellen Auf das Thema antworten  [ 7 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Anfänger Problem (mit PlayMP3 und Drag'n'Drop)
BeitragVerfasst: 08.09.2004 18:53 
Offline
Benutzeravatar

Registriert: 08.09.2004 18:51
Wohnort: Oberkirch
Moins,

ich versuche einen MP3-Player der anderen Art zu Coden, ist eigentlich mein erstes teil das ich Code. Nun habe ich gleich ein Problem. Irgendwie verträgt sich das PlayMP3() nicht mit dem Drag & Drop, egal was ich reindroppe er Spielt nix ab. Wenn ich aber der PlayMP3() eine Datei direkt zuweise z.b. PlayMP3("C:\123.mp3") dann geht es. Verzweifle schon ....

Code:
Enumeration
  #Window_0
EndEnumeration

Enumeration
  #Gadget_0
EndEnumeration

Global Image0

Image0 = CatchImage(0, ?Image0)

DataSection
Image0:
  IncludeBinary "snd.ico"
EndDataSection

Procedure.l DropFiles ()
  ProcedureReturn EventwParam ()
EndProcedure
 
Procedure GetNumDropFiles (*dropFiles)
  ProcedureReturn DragQueryFile_ (*dropFiles, $FFFFFFFF, temp$, 0)
EndProcedure

Procedure.s GetDropFile (*dropFiles, index)
  bufferNeeded = DragQueryFile_ (*dropFiles, index, 0, 0)
  For a = 1 To bufferNeeded: buffer$ + " ": Next
  DragQueryFile_ (*dropFiles, index, buffer$, bufferNeeded+1)
  ProcedureReturn buffer$
EndProcedure

Procedure FreeDropFiles (*dropFiles)
  DragFinish_ (*dropFiles)
EndProcedure

Procedure PlayMP3(mp.s)
  MCISendString_("CLOSE MP3",0,0,0)
  Buffer$=Space(128)
  MCISendString_("OPEN "+ mp +" TYPE MpegVideo ALIAS MP3",Buffer$,128,0)
  MCISendString_("PLAY MP3",0,0,0)
EndProcedure

Procedure SetWinOpacity (hwnd.l, Opacity.l)
  SetWindowLong_(hwnd, #GWL_EXSTYLE, $00080000)
  If OpenLibrary(1, "user32.dll")
    CallFunction(1, "SetLayeredWindowAttributes", hwnd, 0, Opacity, 2)
    CloseLibrary(1)
  EndIf
EndProcedure

Procedure Open_Window_0()
  If OpenWindow(#Window_0, 310, 153, 48, 48,  #PB_Window_BorderLess| #PB_Window_ScreenCentered , "")
      If CreateGadgetList(WindowID())
        ImageGadget(#Gadget_0, 0, 0, 48, 48, Image0)
          SetWinOpacity(WindowID(), 100)
      EndIf
  EndIf
EndProcedure

Open_Window_0()

Repeat
    DragAcceptFiles_ (WindowID(), 1)
  Select WaitWindowEvent ()
      Case #WM_DROPFILES
      *dropped = DropFiles ()
      num.l = DragQueryFile_ (*dropped , $FFFFFFFF, temp$, 0)
      f$ = ""
      For files = 0 To num - 1
        f$ + GetDropFile (*dropped, files) + Chr (13)
      Next
      PlayMP3(f$)
      FreeDropFiles (*dropped)
  EndSelect
ForEver


Danke für jede Hilfe!

MFG Lukaso

Edit by NicTheQuick: Quote-Tags durch Code-Tags ersetzt


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 08.09.2004 19:15 
Offline
Benutzeravatar

Registriert: 29.08.2004 08:48
das kommt davon wenn man einfach code-schnipsel 1:1 kopiert.
Aber nix für ungut, schlieslich bist du Anfänger:

Mache bei der schleife das Chr() getönes raus und es funktioniert ;)
Code:
For files = 0 To num - 1
        f$ + GetDropFile (*dropped, files) + Chr (13)
      Next
      PlayMP3(f$)

_________________
Rings hat geschrieben:
ziert sich nich beim zitieren


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 08.09.2004 20:04 
Offline
Benutzeravatar

Registriert: 08.09.2004 18:51
Wohnort: Oberkirch
Hallo Rings,

auf diese Idee bin ich auch schon gekommen, nur leider liegt der Fehler nicht darin, ich habe schon alles mögliche probiert, nur irgendwie komm ich zu keiner lösung ..... Habe schon alles Untersucht, er gibt alles Richtig aus (Pfad zur Datei) aber es Funktioniert nicht ..... /:->

MFG Lukaso


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 08.09.2004 20:46 
Offline
Benutzeravatar

Registriert: 08.09.2004 11:59
Wohnort: Zürich, Schweiz
Rings hat schon recht - wozu soll der chr(13) gut sein? Lass ihn weg. Dann eine Frage: Gibt es in dem Pfad zu der MP3 Datei ein Leerzeichen? Wenn ja, sollte das die Lösung sein:

mciSendString_("OPEN " + Chr(34) + mp + Chr(34) + " TYPE MpegVideo ALIAS MP3",buffer$,128,0)

Gruss AndyMars

Edit - chr(13): Ah ja, Du willst mehrere Dateien übergeben. Ich glaube aber nicht, dass das möglich ist mit dieser PlayMP3() Prozedur - der kannst Du nur eine Datei auf einmal übergeben...


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 09.09.2004 22:59 
Offline
Benutzeravatar

Registriert: 08.09.2004 18:51
Wohnort: Oberkirch
Hallo,

Danke für deinen Tip, jetzt Funktionierts :mrgreen:
Das mit mehreren Dateien, kommt auch, sobald das gerüst Fertig ist :wink:

MFG Lukaso


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 10.09.2004 00:11 
Offline
Benutzeravatar

Registriert: 29.08.2004 17:06
nächstes mal bitte eine aussagekräftigere Überschrift wählen! :)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 12.09.2004 16:40 
Offline
PureBasic Team
Benutzeravatar

Registriert: 11.09.2004 16:35
Wohnort: Saxony / Deutscheinsiedel
redacid hat geschrieben:
_________________
Ich bin J-The-Grey aus dem "alten" Forum!
Die Signatur wartet sehnlichst auf PB für MacOS.

Warum eigentlich die Namensänderung ?
Möchtest Du mit "redacid" wieder an alte Amiga-Zeiten anknüpfen? :wink:

_________________
Bye,
...André
(PureBasicTeam::Docs - PureArea.net | Bestellen:: PureBasic | PureVisionXP)


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 7 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 6 Gäste


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.

Suche nach:
Gehe zu:  

 


Powered by phpBB © 2008 phpBB Group | Deutsche Übersetzung durch phpBB.de
subSilver+ theme by Canver Software, sponsor Sanal Modifiye