objekt

Objekt je datová struktura která poskytuje vlastnosti, proměnné, metody a události.

Každý objekt je spojen s třídou, která popisuje chování těchto vlastnosti, proměnných, metod a událostí.

Třída může být definována buď v Gambas jako např. třída "textbox" nebo programátorem, který definuje novou třídu v jeho projektu.

Třída nemá adresu a nemůže být zobrazena.

Objekty mají runtime adresu. Tato adresa může být zobrazena ve sledovacím okně stejně tak i členové objektu můžou být zobrazeny ve sledovacím okně.

Příklad 1

V tomto příkladu je Třída "TextBox". "TextBox1" je Objekt, který je vytvořen IDE. "hTextBox1" je odkaz na objekt typu TextBox. Později v tomto příkladu je odkaz "TextBox1", vytvořený v IDE, zkopírován do "hTextBox1". Ve sledovacím okně v IDE oba odkazy ukazují stejnou hexadecimální adresu.

Výraz Hodnota
TextBox ERROR: Unknown ...
TextBox1 (TextBox 0x81099c0)
hTextBox1 (TextBox 0x81099c0)
hTextBox1.Text "Set hTextBox1"

PUBLIC SUB Button1_Click()

  DIM hTextBox1 AS TextBox            ' může držet adresu objektu

  hTextBox1 = TextBox1                ' získá adresu již existujícího objektu
  hTextBox1.Text = "Set hTextBox1"
  hTextBox1.X = TextBox1.X + 80
  hTextBox1.Y = TextBox1.Y + 120

END

Příklad 2

V tomto příkladu je Třída "TextBox". "hTextBox1" je Objekt, která bude vytvořena v novém Formuláři Form1, naplněna textem a relativně, v IDE, posunuta vůči TextBox s názvem TextBox1.

PUBLIC SUB Button1_Click()

  DIM hTextBox1 AS TextBox            ' může držet adresu objektu

  hTextBox1 = NEW TextBox(Form1)      ' Instance TextBox, tj. vytvoření objektu
  hTextBox1.Text = "Set hTextBox1"
  hTextBox1.X = TextBox1.X + 80
  hTextBox1.Y = TextBox1.Y + 120

END