| |
|
|
|
Beschreibung:
DragQueryFile liest den Namen eines ‚Dropped Files’ aus.
Deklaration:
Def DragQueryFile(4) !SHELL32,DragQueryFileA
paramètre:
1.paramètre: Handle sur une Speicherbereich, qui qui ‘Dropped Files’ contient. cet Handle Läßt sich sur cela intercepter qui Message WM_DROPFILES (563) herausfinden. 2.paramètre: qui chez 0 beginnende index (qui Ordnungsnummer) des auszulesenden Files ou bien $FFFFFFFF, le nombre de aufgenommenen Files trop erfahren . 3.paramètre: Mindestens 261 Bytes grand Bereichsvariable, qui cela ausgelesene File aufnimmt. 4.paramètre: qui Taille qui Bereichsvariablen aus paramètre 3 dans Bytes.
Rückgabewert:
si dans paramètre 2 $ FFFFFFFF angegeben wurde, le nombre qui aufgenommenen Files. si un Filename ausgelesen wurde, gibt qui Funktion le nombre qui Buchstaben im Filenamen zurück. si paramètre 3 zéro ist et qui angegebene index existiert, wird qui erforderliche Taille de paramètre 3 dans Byte retour.
Beispiele:
KompilierenMarqueSéparationDef DragAcceptFiles(2) !"SHELL32","DragAcceptFiles"
Def DragFinish(1) !"SHELL32","DragFinish"
Def DragQueryFile(4) !"SHELL32","DragQueryFileA"
Declare Filelistbox&,Anzahl&,Zähler&,PFilename#
Windowstyle 31
Windowtitle "Listbox mit File Drag and Drop"
Window 0,0-640,440
Let Filelistbox&=@Createlistbox(%HWND,"",20,20,500,300)
@DragAcceptFiles(FileListbox&,1)
Usermessages 563
While 0=0
waitinput
IF %UMESSAGE=563
DIM PFilename#,261
LET ANZAHL&=@DragQueryFile(&UWParam,$FFFFFFFF,PFilename#,261)
Usecursor 2
While Zähler&<Anzahl&
Clear PFilename#
@DragQueryFile(&UWParam,Zähler&,PFilename#,261)
@AddString(FileListbox&,String$(PFilename#,0))
LET ZÄHLER&=ZÄHLER&+1
wend
Usecursor 0
Dispose PFilename#
@DragFinish(&UWParam)
Endif
Wend
|
|
|
| |
|
|