Seite 1 von 1

ich wei nicht weiter :(( -->>Poplem behoben<<--

Verfasst: 25.11.2005 18:13
von Tsuki-Namida
bei meinem aktuellen projedkt dreht es sich darum das man midi dateien später von meinem server laden kann und auch anhören.
mein proplem besteht darin das ein Listview gemacht habe, in dem man per doppelklick die midi daten anhören kann und wenn wenn man nur enfach klickt und dann auf play natürlich auch. ich habe erst mal so geschrieben das ich ein locales verzeichnis auwählen muss um die daten zu laden.

wenn ich aber eines ver suche (doppelklick oder einfachklick mit anschliesend play) passiert nichts. zum abspieen nutze ich das winamp plugin system.
hier der qellen text:

Code: Alles auswählen

; PureBasic Visual Designer v3.92 build 1460

IncludeFile "MessengerFenster(Test).pb"
IncludeFile "winamp.pbi"

hWindow=OpenWindow(0,100,100,250,190,#PB_Window_SystemMenu,"PSFPlayer")
init = init_winamp("in_midi.dll","out_wave.dll",hWindow)
If init=0
  Winamp_SetVolume(255)
  EndIf

Open_DL_Messenger()
      Dir.s = PathRequester("Midi Verzeichniss Wählen!", "") 
  ;Dir.s = ""
  If ExamineDirectory(50, Dir, "*.mid")
    While NextDirectoryEntry()=1
        AddGadgetItem(#Listview_1,-1,DirectoryEntryName())
    Wend
  EndIf

Repeat ; Start of the event loop
  
  Event = WindowEvent() ; This line waits until an event is received from Windows
  Delay(1)

  
  WindowID = EventWindowID() ; The Window where the event is generated, can be used in the gadget procedures
  
  GadgetID = EventGadgetID() ; Is it a gadget event?
  
  EventType = EventType() ; The event type
  
  ;You can place code here, and use the result as parameters for the procedures
  
  If Event = #PB_EventGadget
    
    If GadgetID = #Play_Pause
    If Play.l = 0
      hPlay=Winamp_Play(Dir + a.s)
      Play.l=1
      ElseIf Play.l = 1
      If Pause.l = 0
        Winamp_Pause()
        Pause.l =1
        ElseIf Pause.l = 1
        Winamp_Pause()
        Pause.l = 0
        EndIf
     EndIf
   EndIf
      
    ElseIf GadgetID = #Stop
      Winamp_Stop()
      Play.l=0
      
    ElseIf GadgetID = #Download
      
    ElseIf GadgetID = #Center
      
    ElseIf GadgetID = #RPGF_home
      
    ElseIf GadgetID = #Image_3
      
    ElseIf GadgetID = #Image_4
      
    ElseIf GadgetID = #Image_5
      
    ElseIf GadgetID = #Image_6
      
    ElseIf GadgetID = #Image_7
      
    ElseIf GadgetID = #Image_8
      
    ElseIf GadgetID = #Listview_1
            
      If EventType()=#PB_EventType_LeftDoubleClick
        If Play.l = 1      
        Winamp_Stop()
        EndIf      
        a.s=GetGadgetItemText(#Listview_1,GetGadgetState(#Listview_1),0)
        If a.s<>""
          hPlay=Winamp_Play(Dir + a.s)
          Play.l=1
          EndIf
      EndIf
          
          If EventType()=#PB_EventType_LeftClick
            a.s=GetGadgetItemText(#Listview_1,GetGadgetState(#Listview_1),0)
          EndIf
    
  EndIf
  
Until Event = #PB_Event_CloseWindow ; End of the event loop

End
alle benötigten daten sind im selben verzeichnis.

es wäre super wenn jemand den fehler finden würde....

PS: hier ist noch mal der quellentext mir allen dazugehörigen daten damit ihr genau seht was ich meine:
http://chat76.ch.funpic.de/Temp/Midicenter.zip

Verfasst: 25.11.2005 20:42
von Captn. Jinguji
wenn ich bei deinem Code

Code: Alles auswählen

 ;You can place code here, and use the result as parameters for the procedures 
  
  If Event = #PB_EventGadget 
    
in

If EventType = #PB_EventGadget

ändere , spielt er bei mir

Verfasst: 25.11.2005 23:20
von Tsuki-Namida
SUUUUPER :D

Vielen dank es geht super :)

Verfasst: 26.11.2005 00:09
von Kiffi
Magix-Soft <Kain> hat geschrieben:SUUUUPER :D
es wäre nett, wenn Du jetzt auch noch den Betreff anpassen könntest.

Grüße ... Kiffi