do you think the following explanation is enough to understand ?
I do not think so and I wasted an hour or two yesterday to finally write the “correct code” to deal with multiple (images) file drops in a window.
Two Events have to be added in the Canvas (my target Control): Open and DropObject.
To allow an item drop, in Canvas1.Open I put:
Then, in the DropObject Event:
[code] Dim DropFI As FolderItem
Dim ScanCover As Picture
If Obj.FolderItemAvailable Then
// Use a local variable
DropFI = Obj.FolderItem
// Loads the dropped image into a larger Offscreen Picture ScanCover = Picture.Open(DropFI) // Deals with the dropped image file Card_Pict.Graphics.DrawPicture ScanCover, CurrentX, CurrentY // And update the window contents Self.Refresh
Then comes the time to add code to place the dropped images where I want to see them (skipped).
And after sometimes (I went tired to drop only one file at a time) went the time to deals with a drop of many files.
At this time, I started a quest to get information (without internet) on how to do that.
Contrary to a Newbie, I was fortunate enough to know it is possible to do that.
Unfortunately, my quest went to an end and I failed miserably
In my quest, I saw (and read) many times the part concerning DragItem.NextItem, but the scarce explanation did not open a light in my mind (no bell was ringing there).
Better try that than stop in here. So I wrote:
[code] Dim CoverIdx As Integer
CurrentY = 32
CoverIdx = 1
// Display the first dropped image
// Display all subsequent dropped images
CoverIdx = CoverIdx + 1
// Avoid to draw a sixth line If CoverIdx > 54 Then CoverIdx = 1 Exit End If // To avoid 1, Infinite Loop If UserCancelled Then Exit
And it works. You already understand that i do not understand how checking a Boolean will fire hidded code; but at this stage (now) I do not care.
So, for future Xojo users that will not read this conversation, please, add a complete explanation with a simple example code or not.