RüzGaR'
Üye
-
- Katılım
- Haziran 16, 2011
-
- Mesajlar
- 801
-
- Tepkime puanı
- 1
-
- Puanları
- 268
-
- Yaş
- 32
-
- Web sitesi
- www.forumbahane.net
Delphi'ye Başlangıç Temel Bilgileri Olanlar İçin
Visual dillerden biri olan Delphi Programlama dili ile istediğiniz programları yapmak artık zor değil.
Programlarda kullanılabilecek standart işlemler birer kontrol olarak tasarlanmış olup programcının kullanımına sunulmuştur.Örneğin;Personel bilgileri girilen bir program yapılırsa,personelin adı,soyadı ,doğum yeri ve tarihi gibi bilgilerin girileceği Edit kutusu,Kullanıcının neyi girmesi gerektiğini belirten Label,değişik seçeneklerden birini seçme imkanı sağlayan aşağı doğru açılan ComboBox kutusu,komut butonları ,Personelin bir listesini gösterecek bir Liste kutusu ( ListBox ).Bunları kolayca forma taşıyarak programızın ekranını tasarlayabiliriz.Tek yapılması gereken Form üzerindeki kontrolleri oluşturmak için Ana formun üzerinde bulunan Componentlerden ilgili ikonları seçmek ve formumuza tıklamak.
Object Inspector Penceresi
Formumuza koyduğumuz kontrol elemanlarının özellikleri ve aldığı değerler Object Inspector Penceresinde görülür.Object Inspector ; Properties ( Özelliğin Adı ), Events ( Özelliğin Değeri ) 2 kısımdan oluşur.Örneğin Formumuza Label1 koyalım.Label1'i Mouse ile seçelim.F11 tuşuna tıklayarak Object Inspector penceresini açalım.Burada Label1'e ait olan Object Inspector penceresinin açıldığını görürüz.Örneğin Label1 ismini değiştirmek istersek Caption özelliğine gelip karşısındaki kutucuktan Label1 sözcüğünü silip istediğimiz kelimeyi yazacağız. ( Örneğin Personelin Adı ).Bunun gibi Object Inspector'deki değerleri değiştirebiliriz.Örneğin Label1'e ait Object Inspector'deki Properties kısmındaki değeri alClient seçtiğimiz zaman kontrol elemanının (Label1) Formun her tarafını kapladığını görürüz.Yine Font kısmında Label1'in yazı karekterini büyütebilir ve rengini değiştirebiliriz.Yine Örnek verecek olursak Formumuza aşağı açılır kutucuk ( ComboBox1) koyalım.Bu kontrol elemanına ait Object Inspector'de Items'in yanındaki kutuya tıklayarak açılan formda ComboBox açılırken görmek istediğimiz kelimeleri yazalım.
Programı Çalıştırma
Programı F9 tuşuna basılarak çalıştırılır.Programı çalıştırmak için kodların yazılmasına gerek yoktur.Tasarım halinde de programımızı çalıştırabiliriz.
Kod Yazma
Kod yazmak istenilen kontrol elemanı seçilir ve bu elemana ait Object Inspector'deki Events özelliğinden yararlanılır.Burada ilgili kontrol elemanına tıklanınca programın bitmesi isteniyorsa OnClick kısmına kod yazılır.Eğer iki kez tıklanınca programın bitmesi isteniyorsa OnDblClick kısmına kod yazılır veya mouse ile ilgili kontrol elemanının üzerinden geçerken mesaj vermek istiyorsak OnMouseMove kısmına kodumuzu yazacağız.
Örnek:Şimdiye kadar öğrendiğimiz bilgilere göre aşağıdaki programı yapalım.Formumuza ; Ana Formdaki Standart Component'inden 5 tane Label,3 tane Edit.Text,2 tane ComboBox,1 tane ListBox, 5 tane de Buton yerleştirelim. Bu kontrol elemanlarının OnClick kısımlarına aşağıdaki kodları yazalım.
procedure TForm1.Button1.Click(Sender: TObject);
begin //Ekle butonuna yazılacak kod
Listbox1.Items.Add ( Edit1.Text+' ' +Edit2.Text+' '+Edit3.Text+' '+ ComboBox1.Text+' 'Combobox2.Text);
end;
procedure TForm1.Button2.Click(Sender: TObject);
begin // Sil Düğmesi
ListBox1.Items.Delete(ListBox1.ItemIndex);
end;
procedure TForm1.Button3.Click(Sender: TObject);
begin // Kaydet düğmesi
ListBox1.Items.SaveToFile ('liste.dat');//Liste adlı dosya oluşturarak bilgiyi kaydeder.
end;
procedure TForm1.Button4.Click(Sender: TObject);
begin // yükle düğmesi
ListBox1.Items.LoadFromFile('liste.dat');// Bilgileri Listbox1'e yükler.
end;
procedure TForm1.Button5.Click(Sender: TObject);
begin // Programı kapatma düğmesi
Close;
end;
Birden Fazla Form Kullanma
Programa yeni bir form eklemek için File menüsünden NewForm seçeneği kullanılır.Programda birden fazla form varsa bu formlara erişmek için View-Forms menüsü kullanılır.(Diğer formlara Shift + F12 kısayol tuşuylada ulaşabilirsiniz)
Component Palet
Form üzerinde oluşturulacak ekran görüntüsü ise Delphi'nin ana formundaki Component Palet üzerindeki kontrol elemanları tarafından yapılır. Component Palet'ten seçilen kontrol elemanları mouse ile Form üzerine kolayca yerleştirilir.Componentler gruplanarak yerleştirilmiştir.Her grup bir çok farklı componentten oluşmaktadır.
Yeni Component'ler Ekleme
Delphi'ye yeni componentler ve activeX kontrolleri eklenebilmektedir.Yeni bir Component eklemek için Component menüsündeki Import ActiveX Control komutu kullanılır.Açılan pencerede yüklü ActiveX kontrolleri listelenir.Eklenilmek istenilen ActiveX kontrolü listede yok ise Add düğmesi ile OCX dosyası bulunup listeye eklenebilir.Penceredeki Palette Page kutusundan eklemek istenilen kontrolün hangi kısma ekleneceği seçildikten sonra Install düğmesi ile Delphi'ye alınabilir.
Component Şablonları ( Template ) oluşturmak
Program tasarımında en çok yapılan işlemler,sık kullanılan bileşen yada bileşen grupları bir şablon olarak kaydedilerek aynen standart bir bileşen gibi tekrar kullanılabilir.
Project Manager Penceresi
Project Manager penceresi normalde ekranda görülmez.View / Project Manager menü seçeneği ile görüntülebilir.Bu pencere içinde programımıza ait Formlar ve Unitler gösterilir.Bu pencere içindeki dosyalarDPR uzantılı bir dosyada tutulur.Projeden bir dosyayı çıkarmak için Remove seçeneğini,yeni bir dosya eklemek için New seçeneği kullanılır
Delphi'de Kullanılan Dosya Tipleri
.pas
Her unitin kaynak kodlarını içeren dosyalardır.Delphi'de oluşturulan formlara ait kodlar da PAS uzantılı dosyalarda saklanır.
.dfm
Form Dosyalarıdır.Delphi'de oluşturulan formlar ve üzerindeki kontrollere ait bilgiler bu uzantıdaki dosyalara kaydedilir.
.dsk
Projemize ait masa üstü ayarları bu dosyaya kaydedilir.Hangi formun açık olduğu , ekrandaki koordinatları gibi bilgiler bu dosyada tutulur.
.dof
Project / Options diyalog penceresindeki ayarları içeren dosya.
.exe
Çalıştırılabilir program dosyası.Application projeleri çalıştırıldığında onlara ait EXE dosya,projeye verilen isimle otomatik olarak oluşturulmaktadır.
.dcu
Derlenmiş unit dosyaları bu uzantı ile kaydedilir.Bir uygulamayı çalıştırdığımız zaman ilk önce unitler derlenir ve EXE hale getirilir.
.dpr
Proje Kaynak Dosyası.Delphi'deki projeler bu tür dosyalara kaydedilir.
.res
Derlenmiş Binary Kaynak ( Resource ) Dosyaları.Windows tarafından standartlaştırılan bu formattaki dosyalarda resim,ikon,kursor gibi bilgiler bulunur.
Değişkenler
Değişken Tanımı
· Delphi'de değişkenler kullanılmadan önce tanımlanma mecburiyeti vardır.Değişken adları 63 karakteri geçmemelidir.63.karakterden sonrası gözardı edilir.
· Değişken adları sembolleri içermemelidir.($ , * , % vb. )
· Bir değişken tanımlama işi Var bloğunda yapılmalıdır.
· Bir değişkenin tanımı iki kısımdan meydana gelir.1.kısım değişkenin adını , 2. kısım ise değişkenin tipini belirler.
Var
a,b : integer ;
i : integer ;
aciklama : string ;
Medenihal : Boolean ;
kesirli : real ;
Veri Tipleri
Tamsayı Tipleri
ShorInt:1 Byte'lık işaretli tamsayı tipidir.( - 128 ) ile 127 arasında değer alır.
SmallInt:2 Byte'lık işaretli tamsayıdır. ( -32768 ) ile 32767 arasında değer alır.
LongInt:4 Byte'lık işaretli tamsayı tipidir. ( - 2147483647 ) ile 2147483647 arasında değer alabilir.
Integer:LongInt tipi gibidir.4 Byte'lık işaretli tamsayı tipidir.( - 2147483647 ) ile 2147483647 arasında değer alabilir.
Byte:1 Byte'lık işaretsiz bir tamsayı tipidir.0 ile 255 arasında değer alabilir.
Word:2 Byte'lık işaretsiz tamsayı tipidir.0 ile 65535 arasında değer alabilir.
Cardinal: 4 Byte'lık işaretsiz tamsayı tipidir.0 ile 2147483647 arasında değer alabilir.
Int64:64 bitlik tamsayılar tanımlanabilmektedir.( -9 x 10^18 ) ile 9 x 10^18 arasında değer alabilmektedir.
LongWord:0 ile 4294967295 arası değerler alır.İşaretsiz tamsayıdır.Delphi 4 versiyonuyla birlikte geliştirilmiştir.
Variant:16 Byte'lik bir değişken tipidir.Bu tipteki bir değişkene hem sayısal hem de string ifadeler aktarılabilir.
Örnek:
Var
i : variant ;
a : integer ;
k : int64 ;
begin
i := 'Bahadir';
a := 12345 ;
k :=123456789 ;
end;
Reel Sayı Tipleri
Single:4 Byte'lık ondalık sayı tipidir. 1.5 x 10^(-45) ile 3.4 x 10^38 arasında değer alır.
Real48:6 Byte'lık ondalık sayı tipidir. 2.9 x 10^(-39) ile 1.7 x 10^38 arasında değer alabilir.
Real ve Double:8 Byte'lık ondalık sayı tipidir. 5.0 x 10^(-324) ile 1.7 x 10^308 arasında değer alabilir.
Extended:10 Byte'lık ondalık sayı tipidir. 3.4 x 10^(-4932) ile 1.1 x 10^4932 arasında değer alabilir.
Comp:8 Byte'lık ondalık sayı tipidir. -2
3 + 1 ile 2
3 - 1 arasında değer alabilir.
Currency:8 Byte'lık - 922337203685477.5808 ile + 922337203685477.5807 aralığında işaretli bir sayı tipidir.
Boolean Tipi
Boolean:True ve False değerlerinden birini içerir.1 Byte'lık yer kaplar.
Karakter Tipleri
Char:Bir karakter içeren 1 Byte'lık veri tipidir.Bu değişkenler sadece bir karakter barındırabilirler.Örnek: ' B ', ' 2 '
AnsiChar:Char tipi ile aynı özelliklere sahiptir.
WideChar:2 Byte'lık bir karakter tipidir.
String Tipleri
ShortString:255 karaktere kadar karakter ataması yapabilen veri tipidir.Bellekte 1 Byte'lık yer kaplar.
AnsiString:Bu tip stringler Dinamiktir ve belli bir sınırı yoktur.Yani ne kadar karakter atanırsa o kadar bellekte yer kaplar.
String:AnsiString tipiyle aynı özelliklere sahiptir.
PChar:64 KByte'a kadar atama yapılabilen #0 karakteri ile biten string tipidir.
Delphi'de Kullanılan Operatörler
Operatör
Açıklama
Örnek
+
Toplama
a:=b+c;
-
Çıkarma
a:=b-c;
*
Çarpma
a:=b*c;
/
Bölme
a:=b/c;
Div
Tamsayı Bölme
a:=b div 10;
:=
Atama
a:=12;
=
Eşittir
if( a=12) then ShowMessages('a eşit 12');
< >
Eşit Değil
if( a< >12) then ShowMessages('a eşit değil 12');
<
Küçük
if( a<12) then ShowMessages('a küçük 12');
>
Büyük
if( a>12) then ShowMessages('a büyük 12');
>=
Büyük eşit
if( a >=12) then ShowMessages('a büyük eşit 23');
<=
Küçük eşit
if( a<=12) then ShowMessages('a küçük eşit 23');
And
Mantıksal AND
if( a>=12) and ( a<15 ) then ShowMessages('a değerleri gerçekleşti);
Or
Mantıksal Or
if (a>12) or (a<15) then ShowMessages('a değerinin İkisi veya biri gerçekleşti.');
Not
Mantıksal Not
if not (a< 12) then ShowMessages('a değeri 12'den büyük değil.');
^
Pointer Operatörü
a:=b*c^;
@
Pointer Adresi
a:=@b;
$
Heksadecimal Operatörü
a:=$FF;
[]
Dizi Operatörü
a:Array [1..99] of integer;
.
Nokta Operatörü
Personelin.Adı:='Bahadir';
Diziler
Dizi tanımı Var bloğunda aşağıdaki şekilde yapılır.
Var
Diziadi:array[altsınır..üstsınır] of tip
İki boyutlu dizi şöyledir : diziadi:array[altsınır1..üstsınır1,altsınır2..üstsınır2] of tip
Örnek:Var
a:array[1..50]of integer;
Dinamik Dizi Tanımlama
Dinamik Dizi;boyutunun derleme aşamasında belirlenmesi gerekmeyen dizilere denir ve program çalışırken dizinin boyutu belirlenebilir.
< = src="http://us.toto.geo.yahoo.com/toto?s=76001067&l=NE&a mp;b=1&t=1043333717">
Sabitler
Sabitler değişmeyen değerler içerirler.Bu değer programın başından sonuna kadar değeri aynıdır.Bir sabit tanıtımı Const bloğunda yapılmalıdır.
Const
Sabitadı=değeri;
Örnek:Const
i = 100;
adi = 'Bahadir';
İlk Değer Atama ve Static Değişken Tanımı
Değişkenlere ilk değerin atanması ve bu değişkenin değerini prosedürün çalışması bittikten sonra da korunması için Const kısmı altında değişken tanımı yapılır.
Const
değiskeninadi : Tipi = İlkdeğeri;
Örnek:Const
i : integer = 0 ;
Bir Diziye İlk Değer Atama
Const
Diziadi : Array[altsınır..üstsınır] of tipi = (değer1 , değer2 ,...) ; şeklindedir.
Örnek:Const
Mevsimler:Array[1..4] of string = (' İlkbahar ' , ' Yaz ' , ' Sonbahar ' , ' Kış ' );
Pointerler
Pointerler bir değeri değil, değerin bulunduğu adresi gösterir.
PAnsiString:AnsiString tipinde bir değişkeni gösteren pointer.
PByteArray:TbyteArray tipinde bir değişkeni gösteren pointer.Çoğunlukla bellekte ayrılmış bölgelerdeki her byte ulaşılabilmek için kullanılır.
PCurrency:Currency tipindeki bir değişkeni gösteren pointer.
PExtended:Extended tipindeki bir değişkeni gösteren pointer.
PShortString:ShortString tipindeki bir değişkeni gösteren pointer.
PWordArray:TWordArray tipindeki bir değişkeni gösteren pointer.
Herhangi bir değişken için ^ karakteri kullanılarak kolayca pointer tanımlanabilir.
Örnek:Var
ptr : PAnsiString ;
p: ^integer ; // integer tipindeki değişkeni gösteren pointer.
Pointerlerin Barındıracağı Adres
Pointerin barındıracağı adresi belirleme işi @ karakteri ile yapılır.
p := @ i ; // p pointeri i adresini barındıracaktır.
ptr := @ a[1] ; // ptr pointeri ile dizinin ilk adresini barındıracak.
Pointer Kullanımı
Pointer, tiplerin önüne ^işareti koyularak tanımlanırlar.
Örnek:var
x : ^integer ;
y : ^string ;
Şartlı Çalıştırma Deyimleri
Programlar normal zamanda satır satır çalışırlar.İsteğe bağlı olarak belli şartlar aranarak programın bir kısmının çalıştırılmasını veya çalıştırılmamasını sağlayabiliriz.
İf Döngüsü
if döngüsünün genel yapısı aşağıdaki gibidir.
If şart then
Komut ;
Else
diğer komut ;
Örnek:var
i : integer ;
begin
i := 0;
i := i + 1 ;
if i = 1 then begin
Label1.Caption := 'Doğru ';
end
else
if i<>1 then begin
Label1.Caption := 'Yanlış ';
end;
Visual dillerden biri olan Delphi Programlama dili ile istediğiniz programları yapmak artık zor değil.
Programlarda kullanılabilecek standart işlemler birer kontrol olarak tasarlanmış olup programcının kullanımına sunulmuştur.Örneğin;Personel bilgileri girilen bir program yapılırsa,personelin adı,soyadı ,doğum yeri ve tarihi gibi bilgilerin girileceği Edit kutusu,Kullanıcının neyi girmesi gerektiğini belirten Label,değişik seçeneklerden birini seçme imkanı sağlayan aşağı doğru açılan ComboBox kutusu,komut butonları ,Personelin bir listesini gösterecek bir Liste kutusu ( ListBox ).Bunları kolayca forma taşıyarak programızın ekranını tasarlayabiliriz.Tek yapılması gereken Form üzerindeki kontrolleri oluşturmak için Ana formun üzerinde bulunan Componentlerden ilgili ikonları seçmek ve formumuza tıklamak.
Object Inspector Penceresi
Formumuza koyduğumuz kontrol elemanlarının özellikleri ve aldığı değerler Object Inspector Penceresinde görülür.Object Inspector ; Properties ( Özelliğin Adı ), Events ( Özelliğin Değeri ) 2 kısımdan oluşur.Örneğin Formumuza Label1 koyalım.Label1'i Mouse ile seçelim.F11 tuşuna tıklayarak Object Inspector penceresini açalım.Burada Label1'e ait olan Object Inspector penceresinin açıldığını görürüz.Örneğin Label1 ismini değiştirmek istersek Caption özelliğine gelip karşısındaki kutucuktan Label1 sözcüğünü silip istediğimiz kelimeyi yazacağız. ( Örneğin Personelin Adı ).Bunun gibi Object Inspector'deki değerleri değiştirebiliriz.Örneğin Label1'e ait Object Inspector'deki Properties kısmındaki değeri alClient seçtiğimiz zaman kontrol elemanının (Label1) Formun her tarafını kapladığını görürüz.Yine Font kısmında Label1'in yazı karekterini büyütebilir ve rengini değiştirebiliriz.Yine Örnek verecek olursak Formumuza aşağı açılır kutucuk ( ComboBox1) koyalım.Bu kontrol elemanına ait Object Inspector'de Items'in yanındaki kutuya tıklayarak açılan formda ComboBox açılırken görmek istediğimiz kelimeleri yazalım.
Programı Çalıştırma
Programı F9 tuşuna basılarak çalıştırılır.Programı çalıştırmak için kodların yazılmasına gerek yoktur.Tasarım halinde de programımızı çalıştırabiliriz.
Kod Yazma
Kod yazmak istenilen kontrol elemanı seçilir ve bu elemana ait Object Inspector'deki Events özelliğinden yararlanılır.Burada ilgili kontrol elemanına tıklanınca programın bitmesi isteniyorsa OnClick kısmına kod yazılır.Eğer iki kez tıklanınca programın bitmesi isteniyorsa OnDblClick kısmına kod yazılır veya mouse ile ilgili kontrol elemanının üzerinden geçerken mesaj vermek istiyorsak OnMouseMove kısmına kodumuzu yazacağız.
Örnek:Şimdiye kadar öğrendiğimiz bilgilere göre aşağıdaki programı yapalım.Formumuza ; Ana Formdaki Standart Component'inden 5 tane Label,3 tane Edit.Text,2 tane ComboBox,1 tane ListBox, 5 tane de Buton yerleştirelim. Bu kontrol elemanlarının OnClick kısımlarına aşağıdaki kodları yazalım.
procedure TForm1.Button1.Click(Sender: TObject);
begin //Ekle butonuna yazılacak kod
Listbox1.Items.Add ( Edit1.Text+' ' +Edit2.Text+' '+Edit3.Text+' '+ ComboBox1.Text+' 'Combobox2.Text);
end;
procedure TForm1.Button2.Click(Sender: TObject);
begin // Sil Düğmesi
ListBox1.Items.Delete(ListBox1.ItemIndex);
end;
procedure TForm1.Button3.Click(Sender: TObject);
begin // Kaydet düğmesi
ListBox1.Items.SaveToFile ('liste.dat');//Liste adlı dosya oluşturarak bilgiyi kaydeder.
end;
procedure TForm1.Button4.Click(Sender: TObject);
begin // yükle düğmesi
ListBox1.Items.LoadFromFile('liste.dat');// Bilgileri Listbox1'e yükler.
end;
procedure TForm1.Button5.Click(Sender: TObject);
begin // Programı kapatma düğmesi
Close;
end;
Birden Fazla Form Kullanma
Programa yeni bir form eklemek için File menüsünden NewForm seçeneği kullanılır.Programda birden fazla form varsa bu formlara erişmek için View-Forms menüsü kullanılır.(Diğer formlara Shift + F12 kısayol tuşuylada ulaşabilirsiniz)
Component Palet
Form üzerinde oluşturulacak ekran görüntüsü ise Delphi'nin ana formundaki Component Palet üzerindeki kontrol elemanları tarafından yapılır. Component Palet'ten seçilen kontrol elemanları mouse ile Form üzerine kolayca yerleştirilir.Componentler gruplanarak yerleştirilmiştir.Her grup bir çok farklı componentten oluşmaktadır.
Yeni Component'ler Ekleme
Delphi'ye yeni componentler ve activeX kontrolleri eklenebilmektedir.Yeni bir Component eklemek için Component menüsündeki Import ActiveX Control komutu kullanılır.Açılan pencerede yüklü ActiveX kontrolleri listelenir.Eklenilmek istenilen ActiveX kontrolü listede yok ise Add düğmesi ile OCX dosyası bulunup listeye eklenebilir.Penceredeki Palette Page kutusundan eklemek istenilen kontrolün hangi kısma ekleneceği seçildikten sonra Install düğmesi ile Delphi'ye alınabilir.
Component Şablonları ( Template ) oluşturmak
Program tasarımında en çok yapılan işlemler,sık kullanılan bileşen yada bileşen grupları bir şablon olarak kaydedilerek aynen standart bir bileşen gibi tekrar kullanılabilir.
Project Manager Penceresi
Project Manager penceresi normalde ekranda görülmez.View / Project Manager menü seçeneği ile görüntülebilir.Bu pencere içinde programımıza ait Formlar ve Unitler gösterilir.Bu pencere içindeki dosyalarDPR uzantılı bir dosyada tutulur.Projeden bir dosyayı çıkarmak için Remove seçeneğini,yeni bir dosya eklemek için New seçeneği kullanılır
Delphi'de Kullanılan Dosya Tipleri
.pas
Her unitin kaynak kodlarını içeren dosyalardır.Delphi'de oluşturulan formlara ait kodlar da PAS uzantılı dosyalarda saklanır.
.dfm
Form Dosyalarıdır.Delphi'de oluşturulan formlar ve üzerindeki kontrollere ait bilgiler bu uzantıdaki dosyalara kaydedilir.
.dsk
Projemize ait masa üstü ayarları bu dosyaya kaydedilir.Hangi formun açık olduğu , ekrandaki koordinatları gibi bilgiler bu dosyada tutulur.
.dof
Project / Options diyalog penceresindeki ayarları içeren dosya.
.exe
Çalıştırılabilir program dosyası.Application projeleri çalıştırıldığında onlara ait EXE dosya,projeye verilen isimle otomatik olarak oluşturulmaktadır.
.dcu
Derlenmiş unit dosyaları bu uzantı ile kaydedilir.Bir uygulamayı çalıştırdığımız zaman ilk önce unitler derlenir ve EXE hale getirilir.
.dpr
Proje Kaynak Dosyası.Delphi'deki projeler bu tür dosyalara kaydedilir.
.res
Derlenmiş Binary Kaynak ( Resource ) Dosyaları.Windows tarafından standartlaştırılan bu formattaki dosyalarda resim,ikon,kursor gibi bilgiler bulunur.
Değişkenler
Değişken Tanımı
· Delphi'de değişkenler kullanılmadan önce tanımlanma mecburiyeti vardır.Değişken adları 63 karakteri geçmemelidir.63.karakterden sonrası gözardı edilir.
· Değişken adları sembolleri içermemelidir.($ , * , % vb. )
· Bir değişken tanımlama işi Var bloğunda yapılmalıdır.
· Bir değişkenin tanımı iki kısımdan meydana gelir.1.kısım değişkenin adını , 2. kısım ise değişkenin tipini belirler.
Var
a,b : integer ;
i : integer ;
aciklama : string ;
Medenihal : Boolean ;
kesirli : real ;
Veri Tipleri
Tamsayı Tipleri
ShorInt:1 Byte'lık işaretli tamsayı tipidir.( - 128 ) ile 127 arasında değer alır.
SmallInt:2 Byte'lık işaretli tamsayıdır. ( -32768 ) ile 32767 arasında değer alır.
LongInt:4 Byte'lık işaretli tamsayı tipidir. ( - 2147483647 ) ile 2147483647 arasında değer alabilir.
Integer:LongInt tipi gibidir.4 Byte'lık işaretli tamsayı tipidir.( - 2147483647 ) ile 2147483647 arasında değer alabilir.
Byte:1 Byte'lık işaretsiz bir tamsayı tipidir.0 ile 255 arasında değer alabilir.
Word:2 Byte'lık işaretsiz tamsayı tipidir.0 ile 65535 arasında değer alabilir.
Cardinal: 4 Byte'lık işaretsiz tamsayı tipidir.0 ile 2147483647 arasında değer alabilir.
Int64:64 bitlik tamsayılar tanımlanabilmektedir.( -9 x 10^18 ) ile 9 x 10^18 arasında değer alabilmektedir.
LongWord:0 ile 4294967295 arası değerler alır.İşaretsiz tamsayıdır.Delphi 4 versiyonuyla birlikte geliştirilmiştir.
Variant:16 Byte'lik bir değişken tipidir.Bu tipteki bir değişkene hem sayısal hem de string ifadeler aktarılabilir.
Örnek:
Var
i : variant ;
a : integer ;
k : int64 ;
begin
i := 'Bahadir';
a := 12345 ;
k :=123456789 ;
end;
Reel Sayı Tipleri
Single:4 Byte'lık ondalık sayı tipidir. 1.5 x 10^(-45) ile 3.4 x 10^38 arasında değer alır.
Real48:6 Byte'lık ondalık sayı tipidir. 2.9 x 10^(-39) ile 1.7 x 10^38 arasında değer alabilir.
Real ve Double:8 Byte'lık ondalık sayı tipidir. 5.0 x 10^(-324) ile 1.7 x 10^308 arasında değer alabilir.
Extended:10 Byte'lık ondalık sayı tipidir. 3.4 x 10^(-4932) ile 1.1 x 10^4932 arasında değer alabilir.
Comp:8 Byte'lık ondalık sayı tipidir. -2
3 + 1 ile 2
3 - 1 arasında değer alabilir.Currency:8 Byte'lık - 922337203685477.5808 ile + 922337203685477.5807 aralığında işaretli bir sayı tipidir.
Boolean Tipi
Boolean:True ve False değerlerinden birini içerir.1 Byte'lık yer kaplar.
Karakter Tipleri
Char:Bir karakter içeren 1 Byte'lık veri tipidir.Bu değişkenler sadece bir karakter barındırabilirler.Örnek: ' B ', ' 2 '
AnsiChar:Char tipi ile aynı özelliklere sahiptir.
WideChar:2 Byte'lık bir karakter tipidir.
String Tipleri
ShortString:255 karaktere kadar karakter ataması yapabilen veri tipidir.Bellekte 1 Byte'lık yer kaplar.
AnsiString:Bu tip stringler Dinamiktir ve belli bir sınırı yoktur.Yani ne kadar karakter atanırsa o kadar bellekte yer kaplar.
String:AnsiString tipiyle aynı özelliklere sahiptir.
PChar:64 KByte'a kadar atama yapılabilen #0 karakteri ile biten string tipidir.
Delphi'de Kullanılan Operatörler
Operatör
Açıklama
Örnek
+
Toplama
a:=b+c;
-
Çıkarma
a:=b-c;
*
Çarpma
a:=b*c;
/
Bölme
a:=b/c;
Div
Tamsayı Bölme
a:=b div 10;
:=
Atama
a:=12;
=
Eşittir
if( a=12) then ShowMessages('a eşit 12');
< >
Eşit Değil
if( a< >12) then ShowMessages('a eşit değil 12');
<
Küçük
if( a<12) then ShowMessages('a küçük 12');
>
Büyük
if( a>12) then ShowMessages('a büyük 12');
>=
Büyük eşit
if( a >=12) then ShowMessages('a büyük eşit 23');
<=
Küçük eşit
if( a<=12) then ShowMessages('a küçük eşit 23');
And
Mantıksal AND
if( a>=12) and ( a<15 ) then ShowMessages('a değerleri gerçekleşti);
Or
Mantıksal Or
if (a>12) or (a<15) then ShowMessages('a değerinin İkisi veya biri gerçekleşti.');
Not
Mantıksal Not
if not (a< 12) then ShowMessages('a değeri 12'den büyük değil.');
^
Pointer Operatörü
a:=b*c^;
@
Pointer Adresi
a:=@b;
$
Heksadecimal Operatörü
a:=$FF;
[]
Dizi Operatörü
a:Array [1..99] of integer;
.
Nokta Operatörü
Personelin.Adı:='Bahadir';
Diziler
Dizi tanımı Var bloğunda aşağıdaki şekilde yapılır.
Var
Diziadi:array[altsınır..üstsınır] of tip
İki boyutlu dizi şöyledir : diziadi:array[altsınır1..üstsınır1,altsınır2..üstsınır2] of tip
Örnek:Var
a:array[1..50]of integer;
Dinamik Dizi Tanımlama
Dinamik Dizi;boyutunun derleme aşamasında belirlenmesi gerekmeyen dizilere denir ve program çalışırken dizinin boyutu belirlenebilir.
< = src="http://us.toto.geo.yahoo.com/toto?s=76001067&l=NE&a mp;b=1&t=1043333717">
Sabitler
Sabitler değişmeyen değerler içerirler.Bu değer programın başından sonuna kadar değeri aynıdır.Bir sabit tanıtımı Const bloğunda yapılmalıdır.
Const
Sabitadı=değeri;
Örnek:Const
i = 100;
adi = 'Bahadir';
İlk Değer Atama ve Static Değişken Tanımı
Değişkenlere ilk değerin atanması ve bu değişkenin değerini prosedürün çalışması bittikten sonra da korunması için Const kısmı altında değişken tanımı yapılır.
Const
değiskeninadi : Tipi = İlkdeğeri;
Örnek:Const
i : integer = 0 ;
Bir Diziye İlk Değer Atama
Const
Diziadi : Array[altsınır..üstsınır] of tipi = (değer1 , değer2 ,...) ; şeklindedir.
Örnek:Const
Mevsimler:Array[1..4] of string = (' İlkbahar ' , ' Yaz ' , ' Sonbahar ' , ' Kış ' );
Pointerler
Pointerler bir değeri değil, değerin bulunduğu adresi gösterir.
PAnsiString:AnsiString tipinde bir değişkeni gösteren pointer.
PByteArray:TbyteArray tipinde bir değişkeni gösteren pointer.Çoğunlukla bellekte ayrılmış bölgelerdeki her byte ulaşılabilmek için kullanılır.
PCurrency:Currency tipindeki bir değişkeni gösteren pointer.
PExtended:Extended tipindeki bir değişkeni gösteren pointer.
PShortString:ShortString tipindeki bir değişkeni gösteren pointer.
PWordArray:TWordArray tipindeki bir değişkeni gösteren pointer.
Herhangi bir değişken için ^ karakteri kullanılarak kolayca pointer tanımlanabilir.
Örnek:Var
ptr : PAnsiString ;
p: ^integer ; // integer tipindeki değişkeni gösteren pointer.
Pointerlerin Barındıracağı Adres
Pointerin barındıracağı adresi belirleme işi @ karakteri ile yapılır.
p := @ i ; // p pointeri i adresini barındıracaktır.
ptr := @ a[1] ; // ptr pointeri ile dizinin ilk adresini barındıracak.
Pointer Kullanımı
Pointer, tiplerin önüne ^işareti koyularak tanımlanırlar.
Örnek:var
x : ^integer ;
y : ^string ;
Şartlı Çalıştırma Deyimleri
Programlar normal zamanda satır satır çalışırlar.İsteğe bağlı olarak belli şartlar aranarak programın bir kısmının çalıştırılmasını veya çalıştırılmamasını sağlayabiliriz.
İf Döngüsü
if döngüsünün genel yapısı aşağıdaki gibidir.
If şart then
Komut ;
Else
diğer komut ;
Örnek:var
i : integer ;
begin
i := 0;
i := i + 1 ;
if i = 1 then begin
Label1.Caption := 'Doğru ';
end
else
if i<>1 then begin
Label1.Caption := 'Yanlış ';
end;