Differenze tra le versioni di "Rappresentare in un ValueBox un numero avente i punti delle migliaia e la virgola dei decimali"

Da Gambas-it.org - Wikipedia.
 
(Una versione intermedia di uno stesso utente non è mostrata)
Riga 1: Riga 1:
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.
+
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 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''.
+
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 ''Object.SetProperty()''.
 
  
 +
La riattivazione e l'impostazione di tale Proprietà ".Text" viene effettuata con il Metodo ".SetProperty()" della Classe ''Object''.
  
 
Mostriamo un semplice esempio pratico:
 
Mostriamo un semplice esempio pratico:
  '''Public''' Sub Form_Open()
+
  Public Sub Form_Open()
 
   
 
   
 
   Dim numerus As Float = 1000000.123
 
   Dim numerus As Float = 1000000.123
 
   
 
   
 
  <FONT Color=gray>' ''Verifichiamo solo per curiosità l'oggetto figlio del "ValueBox":''</font>
 
  <FONT Color=gray>' ''Verifichiamo solo per curiosità l'oggetto figlio del "ValueBox":''</font>
  Print ValueBox1.Children[0]
+
  Print ValueBox1.Children[0]
 
   
 
   
  <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(numerus, "#,###,###,###.###"))
+
  Object.SetProperty(ValueBox1.Children[0], "text", Format(numerus, "#,###,###,###.###"))
 
      
 
      
  '''End'''
+
  End
Ovviamente una modalità più breve è la seguente:
+
Ovviamente un'altra modalità è la seguente:
  '''Public''' Sub Form_Open()
+
  Public Sub Form_Open()
 
   
 
   
 
   Dim numerus As Float = 1000000.123
 
   Dim numerus As Float = 1000000.123
Riga 26: Riga 25:
 
   tb.Text = Format(numerus, "#,###,###,###.###")
 
   tb.Text = Format(numerus, "#,###,###,###.###")
 
   
 
   
  '''End'''
+
  End

Versione attuale delle 17:28, 29 set 2023

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