Differenze tra le versioni di "Rappresentare in un ValueBox un numero avente i punti delle migliaia e la virgola dei decimali"
(Creata pagina con 'Come è noto, non è possibile far apparire all'interno di un oggetto ''ValueBox'' caratteri che non siano numeri. Pertanto non è possibile ottenere in un ''ValueBox'' la rap...') |
|||
Riga 15: | Riga 15: | ||
<FONT Color=gray>' ''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:''</font> | <FONT Color=gray>' ''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:''</font> | ||
− | Object.SetProperty(ValueBox1.Children[0], "text", Format | + | Object.SetProperty(ValueBox1.Children[0], "text", Format(numerus, "#,###,###,###.###")) |
+ | '''End''' | ||
+ | Ovviamente una modalità più breve è la seguente: | ||
+ | '''Public''' Sub Form_Open() | ||
+ | |||
+ | Dim numerus As Float = 1000000.123 | ||
+ | Dim tb As TextBox = ValueBox1.Children[0] | ||
+ | |||
+ | tb.Text = Format(numerus, "#,###,###,###.###") | ||
+ | |||
'''End''' | '''End''' |
Versione delle 06:08, 28 giu 2022
Come è noto, non è possibile far apparire all'interno di un oggetto 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 oggetto 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 Object.SetProperty().
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 una modalità più breve è la seguente:
Public Sub Form_Open() Dim numerus As Float = 1000000.123 Dim tb As TextBox = ValueBox1.Children[0] tb.Text = Format(numerus, "#,###,###,###.###") End