Italian "Misciare elementi" di un Panel

Jred

Member
Grazie Mille :D Per caso sai come fare questo in Basic4Android? ovvero voglio prendere due pulsanti con indici diversi appartenent al panel e cambiargli di testo.
COME SI FA? :confused:


For i = 25 To 0 Step -1
Dim random As Integer
random = Int(Rnd() * 13 + 1)
Dim random2 As Integer
random2 = Int(Rnd() * 13 + 1)
Dim p As Control = Panel1.Controls(random)
Dim p2 As Control = Panel1.Controls(random2)
Dim temp As String
temp = p.Text
p.Text = p2.Text
p2.Text = temp
Next
 

LucaMs

Expert
Licensed User
Longtime User
Se sul Panel hai soltanto pulsanti (nessun altro tipo di view):
B4X:
Dim Btn1, Btn2 As Button
Dim random As Int
Dim temp As String
For i = 25 To 0 Step -1
    random = Rnd(0, 14)
    Btn1 = Panel1.GetView(random)
    random = Rnd(0, 14)
    Btn2 = Panel1.GetView(random)
    temp = Btn1.Text
    Btn1.Text = Btn2.Text
    Btn2.Text = temp
Next

Se invece ci sono anche altre view, dovrai usare una Map (ad esempio mapButtons) e usare degli indici:
B4X:
Dim mapButtons As Map
mapButtons.Put(0, Button0)
mapButtons.Put(1, Button1)
...

For i = 25 To 0 Step -1
    random = Rnd(0, 14)
    Btn1 = mapButtons.Get(random)
...
 
Last edited:

Jred

Member
Se sul Panel hai soltanto pulsanti (nessun altro tipo di view):
B4X:
Dim Btn1, Btn2 As Button
Dim random As Int
Dim temp As String
For i = 25 To 0 Step -1
    random = Rnd(0, 14)
    Btn1 = Panel1.GetView(random)
    random = Rnd(0, 14)
    Btn2 = Panel1.GetView(random)
    temp = Btn1.Text
    Btn1.Text = Btn2.Text
    Btn2.Text = temp
Next

Se invece ci sono anche altre view, dovrai usare una Map (ad esempio mapButtons) e usare degli indici:
B4X:
Dim mapButtons As Map
mapButtons.Put(0, Button0)
mapButtons.Put(1, Button1)
...

For i = 25 To 0 Step -1
    random = Rnd(0, 14)
    Btn1 = mapButtons.Get(random)
...
Grazie mille :D Ho risolto :D siccome avevo solo button li ho messi in un for e ho risolto :D
 
Top