Mehrere Dateien per Drag and Drop

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Fox
Beiträge: 75
Registriert: 08.08.2007 10:14
Kontaktdaten:

Mehrere Dateien per Drag and Drop

Beitrag von Fox »

Hi.. ich programmiere zur Zeit nen kleinen Musikplayer in der Art wie Winamp nur weit nicht so komplex versteht sich...Nunja ich bin bei dem Playlist Editor angelangt und habe mir mal ein Beispiel aus dem Code Archiv angeschaut... Ich habs ein bisschen abgeändert und jetzt frage ich mich wie man denn mehrere Dateien per Drag and Drop in das Gadget ziehen kann...

Hier mal mein Source...

Code: Alles auswählen


Enumeration
  #PlaylistEditor
EndEnumeration

;- Gadget Constants
;
Enumeration
  #Playlist
  #Offnen
  #Speichern
EndEnumeration

#BufferLength = 1000
#MEM_DROPFILES = 10000
*Buffer = AllocateMemory(#BufferLength)

hWnd = OpenWindow(#PlaylistEditor, 415, 85, 440, 558, "Playlist Editor",  #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar )
    If CreateGadgetList(WindowID(#PlaylistEditor))
 If hWnd
      DragAcceptFiles_(WindowID(#PlaylistEditor), 1)   
      ListViewGadget(#Playlist, 5, 5, 430, 515)
      ButtonGadget(#Offnen, 15, 530, 95, 25, "Öffnen")
      ButtonGadget(#Speichern, 130, 530, 95, 25, "Speichern")
      SetGadgetColor(#Playlist, #PB_Gadget_BackColor,$000000)
      SetGadgetColor(#Playlist, #PB_Gadget_FrontColor,RGB(0,255,0))
      
      Repeat
    Event= WaitWindowEvent()
    Select Event
    
    Case #Offnen
    
    OpenFileRequester("Öffnen","Playlist.dat","*.*",0)
    
    Case #Speichern
    
    SaveFileRequester("Speichern","Playlist.dat","*.*",0)
    
        
    
    Case #PB_Event_CloseWindow
      Quit = 1
      
    Case #WM_DROPFILES
      *DropHandle = EventwParam()
      *DropHandle
      If *DropHandle
        NbDroppedFiles = DragQueryFile_ (*DropHandle, $FFFFFFFF, *Buffer, #BufferLength)
        DragQueryFile_(*DropHandle, k, *Buffer, #BufferLength)
        DragFinish_(*DropHandle)
        File$=PeekS(*Buffer)
        AddGadgetItem(#Playlist, -1, File$)
        
              EndIf
    EndSelect
  Until Quit = 1
EndIf
End
EndIf

Hoffe ihr könnt mir helfen...

Danke im Vorraus

Fox
Benutzeravatar
AND51
Beiträge: 5220
Registriert: 01.10.2005 13:15

Wer dies liest, ist doof! Haha, gelesen!!

Beitrag von AND51 »

Vielleicht hilft dir ja das hier weiter:
http://www.purebasic.fr/german/viewtopi ... =drag+drop
PB 4.30

Code: Alles auswählen

Macro Happy
 ;-)
EndMacro

Happy End
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Mehrere Dateien per Drag and Drop

Beitrag von Kiffi »

@Fox:

Ab PB Version 4.10 wird Drag & Drop nativ unterstützt. Schau mal
in der Hilfe nach. Dort gibt es ein eigenes Kapitel dafür.

Einen Beispielcode liefert die ebenfalls vorhandene DragDrop.pb

Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
Fox
Beiträge: 75
Registriert: 08.08.2007 10:14
Kontaktdaten:

Beitrag von Fox »

@ AND51... Dein code funktioniert beim Listviewgadegt nicht... Schade
@ Kiffi Die Beispiele zu Drag and Drop hab ich mir angesehen nur ist es so, dass die in der Drag and Drop.pb verwendeten Elemente inerhalb des Programms sind und wenn ich jetzt z.b. meine Musiksammlung per Drag and Drop einfügen will funktioniert das nicht...

Danke trotzdem
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Fox hat geschrieben:@ AND51... Dein code funktioniert beim Listviewgadegt nicht... Schade
Vielleicht mal den ganzen Thread lesen?
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Fox
Beiträge: 75
Registriert: 08.08.2007 10:14
Kontaktdaten:

Beitrag von Fox »

Hab ich, nur ich hab den Link übersehen... Sollte wohl mal wieder meine Brille tragn. Naja auf jeden Fall klappt es jetzt :mrgreen: ... Danke euch allen


Fox
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

Fox hat geschrieben:@ Kiffi Die Beispiele zu Drag and Drop hab ich mir angesehen nur ist es so, dass die in der Drag and Drop.pb verwendeten Elemente inerhalb des Programms sind und wenn ich jetzt z.b. meine Musiksammlung per Drag and Drop einfügen will funktioniert das nicht...
und wenn Du dann Deine Brille auf hast, dann kannst Du Dir das
DragDrop.pb gerne noch mal anschauen ;-)

Grüße ... Kiffi
a²+b²=mc²
Antworten