Rappresentare in un ValueBox un numero avente i punti delle migliaia e la virgola dei decimali

Da Gambas-it.org - Wikipedia.

Come è noto, non è possibile far apparire all'interno di un Oggetto grafico ValueBox caratteri che non siano numeri. Pertanto non è possibile ottenere in un ValueBox la rappresentazione di un numero con i punti delle migliaia e con la virgola dei decimali.

Questo limite, però, volendo, può essere superato con uno stratagemma. Infatti, poiché l'oggetto ValueBox è composto anche da un TextBox, questo assume la Proprietà di figlio (".Children") del predetto Controllo ValueBox. Il TextBox, in quanto figlio del predetto Oggetto ValueBox, conserva sostanzialmente le sue capacità e proprietà, anche quelle disattivate o comunque modificate per il ValueBox. Tali proprietà, come ad esempio quella ".Text", possono essere riattivate ed utilizzate via codice dall'Oggetto ValueBox.

La riattivazione e l'impostazione di tale Proprietà ".Text" viene effettuata con il Metodo ".SetProperty()" della Classe Object.

Mostriamo un semplice esempio pratico:

Public Sub Form_Open()

 Dim numerus As Float = 1000000.123

' Verifichiamo solo per curiosità l'oggetto figlio del "ValueBox":
 Print ValueBox1.Children[0]

' Impostiamo (riattivandola) la Proprietà ".Text" dell'oggetto figlio (cioè il "TextBox") del "ValuBox", e mostriamo il numero con il punto delle migliaia e la virgola dei decimali:
 Object.SetProperty(ValueBox1.Children[0], "text", Format(numerus, "#,###,###,###.###"))
   
End

Ovviamente un'altra modalità è la seguente:

Public Sub Form_Open()

 Dim numerus As Float = 1000000.123
 Dim tb As TextBox = ValueBox1.Children[0]

 tb.Text = Format(numerus, "#,###,###,###.###")

End