object
Classe
Una classe può essere definita in
Gambas come ad esempio la classe "
TextBox"
oppure il programmatore può creare una nuova classe.
Una classe non ha un indirizzo e non può essere visualizzata.
Oggetto
Per utilizzare una classe in modalità di runtime, deve essere istanziata. Dopodichè viene creato un oggetto.
Questo compito viene svolto dal framework all'avvio, oppure da programma con il comando
NEW.
In entrambi i casi tutte le variabili della classe sono mantenute in memoria.
Gli oggetti hanno un indirizzo di runtime. Questo indirizzo può essere visualizzato nella finestra immediata (watch).
Allo stesso modo anche i menbri di un oggetto possono essere visualizzati nella finestra immediata (watch).
Esempio
In questo esempio "
TextBox" è una classe.
"TextBox1" è un oggetto, che viene creato dall'IDE.
"xTextBox1" è un riferimento ad un oggetto di tipo
TextBox.
Successivamente in quest'esempio il riferimento creato dall'IDE "TextBox1" è copiato in "xTextBox1".
Nella finestra Immediata (watch) dell'IDE entrambi i riferimenti vengono mostrati con lo stesso indirizzo esadecimale.
Espressione
|
Valore
|
TextBox
|
|
TextBox1
|
(TextBox 0x81099c0)
|
xTextBox1
|
(TextBox 0x81099c0)
|
xTextBox1.Text
|
"Set xTextBox1"
|
Examples
PUBLIC SUB Button1_Click()
DIM xTextBox1 AS TextBox ' dichiara l'oggetto come classe TextBox
xTextBox1 = TextBox1 ' prende l'indirizzo dell'oggetto esistente
xTextBox1.Text = "Set xTextBox1"
xTextBox1.X = TextBox1.X + 80
xTextBox1.Y = TextBox1.Y + 120
END
In questo esempio "
TextBox" è una classe. "xTextBox1" è un oggetto di questa classe, che sarà creato come nuovo oggetto su
Form Form1.
Quindi popolato con un testo e posizionato relativamente alla posizione di
TextBox con il nome TextBox1
Examples
PUBLIC SUB Button1_Click()
DIM xTextBox1 AS TextBox ' dichiara l'oggetto come classe TextBox
xTextBox1 = NEW TextBox(Form1) ' istanzia una TextBox, creando un nuovo oggetto
xTextBox1.Text = "Set xTextBox1"
xTextBox1.X = TextBox1.X + 80
xTextBox1.Y = TextBox1.Y + 120
END