Italian Drag and Drop

Ennesima77

Member
Licensed User
Longtime User
Mi porto avanti con un'altra cosa che ho in mente per il progetto che stò realizzando.
E' possibile realizzare un drag and drop di alcuni elementi della activity?
Spiego meglio la mia esigenza ed idea:

avendo un tabellone con N immagini che rappresentano le persone in una sala vorrei fare in modo che prendendo l'immagine si possa trascinare in una determinatazona dello schermo che indica che la persona non è più presente.

sarebbe carino farlo direttamente con il drag & drop, anche se per il momento avevo pensato di farlo con un popup menù (come da post precedente http://www.b4x.com/forum/italian-forum/20009-popup-menu.html)

Idee e suggerimenti in merito?
 

Ennesima77

Member
Licensed User
Longtime User
Poi senz'altro realizzarlo via codice. Scrivi il codice per muovere e allocare le immagini sullo schermo usando l'evento "Activity_Touch".

Qualche banale esempio? E' proprio quello che mi manca in questo momento, qualcosa da cui partire per poi sviluppare il tutto.

Grazieper l'interessamento.
 

Dominex

Active Member
Licensed User
Longtime User
Questo qui sotto è per farti comprendere come si possono muovere gli oggetti.

B4X:
Sub Globals
   Dim pnlMove As Panel
   Dim X0, Y0, X1, Y1 As Float
End Sub

Sub Activity_Create(FirstTime As Boolean)
   pnlMove.Initialize("pnlMove")
   pnlMove.Color = Colors.Yellow
   Activity.AddView(pnlMove,40%x,40%y,100dip,100dip)
End Sub

Sub Activity_Touch (Action As Int, X As Float, Y As Float)
   Dim dX, dY As Float
   Select Action
      Case Activity.ACTION_DOWN
         X0 = X
         Y0 = Y
         X1 = pnlMove.Left
         Y1 = pnlMove.Top
      Case Activity.ACTION_MOVE
         dX = X - X0
         dY = Y - Y0
         pnlMove.Left = X1 + dX
         pnlMove.Top = Y1 + dY
      Case Activity.ACTION_UP
   End Select
End Sub

Quello che devi fare è programmare il movimento dei vari oggetti, poi fai il posizionamento degli stessi in aree definite quando lasci il touch.
 

Ennesima77

Member
Licensed User
Longtime User
Grazie mille, nei prossimi giorni faccio qualche esperimento e ti saprò dire l risultato.
 
Top