Kod:
Delphi'de değişkenlerin yerlerini ihtiyacımıza göre deklare ederiz.
1. Prosedür veya Fonksiyon Bazında Değişken Tanımlama
procedure TForm1.Button1Click(Sender: TObject);
var
sayi:integer;
begin
sayi:=sayi+1;
showmessage('sayı='+inttostr(sayi));
end;
Bu prosedürdeki sayi değişkeni prosedüre özgüdür ve prosedür işletilip son bulduktan sonra bellek serbest bırakılır ve bu yüzden yukarıdaki örnekte butona her tıkladığınızda sayı=1 görünür. Ayrıca bu x değişkenine formun diğer prosedürlerinden ya da diğer formlardan erişemezsiniz.
2. Form Bazında Değişken Tanımlama.
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
sayi:integer;
{ Private declarations }
public
{ Public declarations }
end;
Buradaki değişkenin form içerisindeki herhangi bir prosedür veya fonksiyondan erişebilirsiniz. Buradaki değişkenler form close olmadan bellekten silinmezler. Aşağıdaki örnekte buttonclick prosedüründe formun sayi değişkenini 1 arttırıp showmessage ile gösteriyorum. Butona her basıldığında sayi değeri 1 artıcak ve sayi=1 sayi=2 sayi=3 vs. görünecektir.
procedure TForm1.Button1Click(Sender: TObject);
begin
form1.sayi:=form1.sayi+1; // buradaki sayi formun private alanına deklare edilen sayi değişkenidir.
showmessage('sayı='+inttostr(form1.sayi));//form1.sayi yazmak yerine direk sayi yazabilirsiniz
end; // Farkı görebilmeniz için form1.sayi şeklinde yazdım.
3. Program Genelinde Değişken Tanımlama.
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
sayi:integer;
{ Public declarations }
end;
Burada tanımlanan sayi değişkenine diğer unitlerden(formlardan) erişebilirsiniz. Sadece diğer formların uses satırına değişkenin tanımlı olduğu formun unit adını (örnekte unit1) yazmanız gerekir.