Mantenere durante il Drag&Drop il cursore del mouse nel punto dell'immagine ove si è cliccato
Da Gambas-it.org - Wikipedia.
Versione del 27 nov 2022 alle 09:01 di Vuott (Discussione | contributi)
Di norma durante il trascinamento di un'immagine con le risorse, apprestate da Gambas per il Drag&Drop, il cursore del mouse si pone poco al di fuori dell'angolo destro in alto dell'icona trascinata.
Se si intende mantenere invece il cursore del mouse nel punto, ove si è cliccato, prima dell'inizio del trascinamento, allora si dovranno assegnare alle Proprietà ".X" e ".Y" della Classe Drag i valori ritornati dalle Proprietà ".X" e ".Y" della Classe Mouse all'interno della routine dell'Evento "_MouseMove()" della PictureBox, dalla quale si trascina l'immagine.
Mostriamo un semplice esempio pratico:
Public Sub Form_Open() ' Attiviamo la capacità della "PictureBox1" di ricevere con l'Evento "_Drop()" l'immagine trascinata: PictureBox1.Drop = True PictureBox2.Picture = Picture.Load("/percorso/del/file/immagine") End Public Sub PictureBox2_MouseDrag() ' Preleviamo e trasciniamo l'immagine dalla "PictureBox2": Drag.Icon = Last.Picture Last.Drag(Last.Picture.Image) ' ...o anche: ' Last.Drag(Drag.Icon.Image) End Public Sub PictureBox2_MouseMove() Drag.IconX = Mouse.X Drag.IconY = Mouse.Y End Public Sub PictureBox1_Drop() ' Rilasciamo l'immagine nella "PictureBox1": PictureBox1.Picture = Drag.Data.Picture ' ...o anche: ' PictureBox1.Image = Drag.Icon.Image End