problème drag and drop
problème drag and drop
voila je programme un logiciel ou j'ai un gadget sur lequel je veux pouvoir utiliser le drag and drop de fichiers soit locaux sur mon disque soit depuis un navigateur internet
si j'utilise #pb_drop_files je récupère l'emplacement du fichier local sur le disque pas de soucis , par contre depuis le navigateur je n'ai que le fichier local de l'image si c'est un lien avec une image mais pas l'url du fichier
si j'utilise #pb_drop_text je récupère les url depuis le navigateur mais plus les fichier locaux.
y a t'il une solution, pour récupérer les deux données sur le même gadget je tourne en rond depuis le début d’après midi ...
si j'utilise #pb_drop_files je récupère l'emplacement du fichier local sur le disque pas de soucis , par contre depuis le navigateur je n'ai que le fichier local de l'image si c'est un lien avec une image mais pas l'url du fichier
si j'utilise #pb_drop_text je récupère les url depuis le navigateur mais plus les fichier locaux.
y a t'il une solution, pour récupérer les deux données sur le même gadget je tourne en rond depuis le début d’après midi ...
Re: problème drag and drop
Je n'ai pas la solution mais si elle existe je veux bien la connaitre aussi.
Je me dis qu'il faudrait compter sur le drag n drop pour ce qui est du fichier mais faudrait peut être le joindre à un hook détectant la source de l'objet survolé sur la page pour récupérer son url.
Je me dis qu'il faudrait compter sur le drag n drop pour ce qui est du fichier mais faudrait peut être le joindre à un hook détectant la source de l'objet survolé sur la page pour récupérer son url.
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Re: problème drag and drop
pis t'être que ça va t'aider ...
Code : Tout sélectionner
; Window Variablen
#MainWin=0
#WinX=300
#WinY=200
#WinW=200
#WinH=200
#BufferLength = 1000
#MEM_DROPFILES = 10
*Buffer = AllocateMemory(#BufferLength)
hWnd = OpenWindow(#MainWin, #WinX,#WinY, #WinW,#WinH, "DragTest", #PB_Window_SystemMenu)
If hWnd
DragAcceptFiles_(WindowID(#MainWin), 1)
;UseWindow( #MainWin )
Repeat
Event= WaitWindowEvent()
Select Event
Case #PB_Event_CloseWindow
Quit = 1
Case #WM_DROPFILES
*DropHandle = EventwParam()
Debug *DropHandle
If *DropHandle
NbDroppedFiles = DragQueryFile_ (*DropHandle, $FFFFFFFF, *Buffer, #BufferLength)
DragQueryFile_(*DropHandle, k, *Buffer, #BufferLength)
DragFinish_(*DropHandle)
File$=PeekS(*Buffer)
MessageRequester("Gedropter Name", File$, 0)
EndIf
EndSelect
Until Quit = 1
EndIf
EndRe: problème drag and drop
tu devrai lire attentivement
DragOSFormats()
un gadget peut se voir attribuer plusieurs type de format
apres a toi de voir ceux a quoi ton gadget va réagir
puisque tu semble etre capable de récupérer les 2 type de donnée
un event est reçu par ton prg lorsqu'un Drop viens d'arriver
tu lis le type, et tu agis en conséquence
DragOSFormats()
un gadget peut se voir attribuer plusieurs type de format
apres a toi de voir ceux a quoi ton gadget va réagir
puisque tu semble etre capable de récupérer les 2 type de donnée
un event est reçu par ton prg lorsqu'un Drop viens d'arriver
tu lis le type, et tu agis en conséquence
Dernière modification par Backup le dim. 15/mai/2011 11:48, modifié 1 fois.
Re: problème drag and drop
Ce qu'il souhaite c'est qu'avec ce drag/drop d'image d'une page web (ou autre famille de fichier) il puisse afficher d'un coté il ait le chemin locale et de l'autre l'url du fichier. (si j'ai bien pigé)Patrick88 a écrit :pis t'être que ça va t'aider ...Code : Tout sélectionner
; Window Variablen #MainWin=0 #WinX=300 #WinY=200 #WinW=200 #WinH=200 #BufferLength = 1000 #MEM_DROPFILES = 10 *Buffer = AllocateMemory(#BufferLength) hWnd = OpenWindow(#MainWin, #WinX,#WinY, #WinW,#WinH, "DragTest", #PB_Window_SystemMenu) If hWnd DragAcceptFiles_(WindowID(#MainWin), 1) ;UseWindow( #MainWin ) Repeat Event= WaitWindowEvent() Select Event Case #PB_Event_CloseWindow Quit = 1 Case #WM_DROPFILES *DropHandle = EventwParam() Debug *DropHandle If *DropHandle NbDroppedFiles = DragQueryFile_ (*DropHandle, $FFFFFFFF, *Buffer, #BufferLength) DragQueryFile_(*DropHandle, k, *Buffer, #BufferLength) DragFinish_(*DropHandle) File$=PeekS(*Buffer) MessageRequester("Gedropter Name", File$, 0) EndIf EndSelect Until Quit = 1 EndIf End
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Re: problème drag and drop
ce que je souhaite c'est pouvoir faire un drag & drop d'un fichier sur mon disque dur mais aussi depuis une url.
dans le meme gadget si possible, pas forcement une image mais ca peut être un fichier zip ou autre.
mais si j'utilise le drag n drop avec #pb_drop_file ca me renvoi le chemin vers l'image dans le répertoire temp sur mon disque. moi ce que je veux c'est l'url du fichier lié a l'image. ce que j'obtiens si j'utilise #pb_drop_text.
mais j’arrive pas a avoir sur le même gadget les deux modes simultanément #pb_drop_file et #pb_drop_text
je vais essayer ton code pour voir
dans le meme gadget si possible, pas forcement une image mais ca peut être un fichier zip ou autre.
mais si j'utilise le drag n drop avec #pb_drop_file ca me renvoi le chemin vers l'image dans le répertoire temp sur mon disque. moi ce que je veux c'est l'url du fichier lié a l'image. ce que j'obtiens si j'utilise #pb_drop_text.
mais j’arrive pas a avoir sur le même gadget les deux modes simultanément #pb_drop_file et #pb_drop_text
je vais essayer ton code pour voir
Re: problème drag and drop
marche pas avec un drop d'url...
Re: problème drag and drop
et avec #PB_Drag_Link ?
ps je veux bien chercher , mais laisse au moins un code minimum
pour teste ..
ps je veux bien chercher , mais laisse au moins un code minimum
pour teste ..
Re: problème drag and drop
je voudrais récupérer l'url d'un fichier depuis mon navigateur ou le chemin vers le fichier si c'est un fichier local et ce depuis le même gadget ici un image gadget pour l'exemple.
essaye le glisser déposer depuis un lien internet et un fichier local avec les 2 options.
tu vas tout de suite comprendre mon problème
[/code]
essaye le glisser déposer depuis un lien internet et un fichier local avec les 2 options.
tu vas tout de suite comprendre mon problème
Code : Tout sélectionner
test=OpenWindow(#PB_Any,0,0,128,128,"test",#PB_Window_ScreenCentered|#PB_Window_SystemMenu)
test2=ImageGadget(#PB_Any,0,0,128,128,0,#PB_Image_Border):EnableGadgetDrop(test2,#PB_Drop_Files,#PB_Drag_Link) ; mettre en commentaire pour tester #pb_drop_text
;test2=ImageGadget(#PB_Any,0,0,128,128,0,#PB_Image_Border):EnableGadgetDrop(test2,#PB_Drop_Text,#PB_Drag_Link) ; enlever le commentaire pour tester #pb_drop_text
Repeat
ev=WindowEvent()
If ev
Select ev
Case #PB_Event_GadgetDrop
If EventDropType()=#PB_Drop_Files
Debug EventDropFiles()
EndIf
If EventDropType()=#PB_Drop_Text
Debug EventDropText()
EndIf
EndSelect
EndIf
Until ev=#PB_Event_CloseWindow[/code]
Re: problème drag and drop
..............
Dernière modification par Backup le sam. 01/oct./2011 10:00, modifié 1 fois.
- falsam
- Messages : 7334
- Inscription : dim. 22/août/2010 15:24
- Localisation : IDF (Yvelines)
- Contact :
Re: problème drag and drop
Bien vuuuuuu(e) !!Je ne te ferais pas d'éloges car tu vas finir par enfler :p 
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Re: problème drag and drop
ah ok, vu que j'ai la doc en anglais j’étais passé a coté de cette finesse...
merci dobro
merci dobro