Italian B4j - Indicizzazione Label

marco.canta

Active Member
Licensed User
Longtime User
Buongiorno ragazzi, ho bisogno di un vostro aiuto.
Ho realizzato una form con 6 button e 6 label, tutti i button hanno la stessa EventName e il tag con un valore progressino e le label idem.

Ora il problema ... per leggere i tasti fatto cosi :

B4X:
sub button_mouseClicked(EventData as mouseEvent)
   dim btnSender as button
   btnSender = Sender

  log(btnSernder.tag)

end sub


Come posso fare con le label per avere qualcosa del genere ?

B4X:
for i = 1 to 6
   ' ... dare alle 6 label il valore Text = i
next


Grazie Marco.
 

LucaMs

Expert
Licensed User
Longtime User
No, anche senza aggiungere un Pane, usando quello del MainForm:
B4X:
Dim Index As Int
For Each nd As Node In MainForm.RootPane.GetAllViewsRecursive
    If nd Is Label Then
        Index = Index + 1
        Dim lbl As Label = nd
        lbl.Text = Index
    End If
Next
 

Star-Dust

Expert
Licensed User
Longtime User
Cmbia la prima riga cosi
B4X:
Dim Index As Int = 0
 

marco.canta

Active Member
Licensed User
Longtime User
Funziona ... ho usato il Pane ... unico problema e' che mi cambia anche la LabelTitolo che non andrebbe cambiata.

devo fare un Pane solo con le label da cambiare o o che modo di limitare le label da cambiare, magari con tag o qualcosaltro ?

Grazie ancora ... Marco
 

marco.canta

Active Member
Licensed User
Longtime User
Ho risolto cosi ... anche se non mi piace molto
B4X:
    Dim Indice As Int = 0
    For Each nd As Node In pnlServizi.GetAllViewsRecursive
        If nd Is Label Then
            Dim lbl As Label = nd
            If Indice <> 0 Then
                lbl.Text = Indice
            End If
            Indice = Indice + 1
        End If
    Next

lbl con indice = 0 è la label che contiene il titolo.
 
Top