Objekt je premenná nejakého typu (triedy), ktorá má svoje vlastnosti a metódy. Dá sa povedať, že komponent je tiež objektom.
Vytvorme si nový projekt (Project / New Project / Application). Premenujme formulár Form1 napríklad na frmOkno (frm - od slova Form), keďže nie je dobré nechávať objektom nič nehovoriace názvy. Premenovanie je jednoduché pomocou vlastnosti Name.
Na formulár umiestnime editačné pole (TEdit) a nazveme ho edtMeno (edt - od slova Edit). Ešte pridáme tlačidlo typu TButton a jeho meno bude btnPotvrdit (btn - Button). Nápis na tlačidle zmeníme jeho vlastnosťou Caption v Object Inspectore. Teraz na tlačidlo 2x klikneme. Zapíšeme zdrojový kód.
procedure TfrmOkno.btnPotvrditClick(Sender: TObject); begin ShowMessage(frmOkno.edtMeno.Text); end;
Týmto sa v skutočnom programe pri kliknutí na tlačidlo zobrazí hláška s obsahom editačného poľa.
Rozoberme si časť:
frmOkno.edtMeno.Text
Nadradeným objektom je frmOkno. Tento obsahuje podradený objekt (technicky je to len jedna z jeho vlastností) edtMeno, ktorý má svoju vlastnosť Text. Dalo by sa to prirovnať k stolu (frmOkno), v ktorom je zásuvka (edtMeno) a tá má na sebe nápis (Text). V praxi môže mať jeden objekt viacero podobjektov a tie tiež.
Prišiel však čas, aby sme náš program spustili. Do políčka napíšte nejaké meno a kliknite na tlačidlo.
V prípade, že sa daný zdrojový kód nachádza v procedúre TfrmOkno.XYZ
, objekt frmOkno môžeme vynechať:
procedure TfrmOkno.btnPotvrditClick(Sender: TObject); begin ShowMessage(edtMeno.Text); end;
Už vieme, ako sa dá vlastnosť zistiť, no nevieme ju zmeniť počas behu programu. Preto sa to naučíme. Vložte na formulár tlačidlo a nazvite ho btnZmenit. Po dvojitom kliknutí zapíšeme kód:
frmOkno.edtMeno.Text := 'Andrej';
Je to obdobné s priradením hodnoty premennej v Pascale (Free Pascale). Toto priradenie spôsobí zmenu textu v editačnom poli (v tomto prípade po kliknutí na tlačidlo).
Niektoré vlastnosti, ako napríklad Text komponentu Edit, sa dajú meniť počas behu programu. Iné sa dajú čítať, no ich hodnotu nemôžeme meniť. Volajú sa Read-only.