Professional Documents
Culture Documents
34 Konuda Delphi 7 Uygulama Gelistirme R
34 Konuda Delphi 7 Uygulama Gelistirme R
discussions, stats, and author profiles for this publication at: https://www.researchgate.net/publication/271941522
CITATIONS READS
0 860
1 author:
Zeydin Pala
Mus Alparslan University
89 PUBLICATIONS 129 CITATIONS
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
Determination electromagnetic risk factors of the Mus Alparslan University Campus View project
All content following this page was uploaded by Zeydin Pala on 08 February 2015.
Genel İçerik
Kategorik olarak Delphi Kontrol Elemanları, Delphi 7 ile temel programlama teknikleri, Metin giriş kontrolleri, Component Library,
Etiketler, Delphi nesne modeli, Özel bilgi giriş kontrolleri, BaseCLX kütüphanesi, Buttonlar, Standart fonksiyonlar, Hata yakalama
teknikleri, Mesaj pencereleri, Formlar ve diyalog kutuları, Delphi ile grafik programlama, Kontrol olayları, Delphi ile grafik proglamlama,
Drag&Drop, Drag&Dock, DDE&Link, DLL dosyası yazma, Windows API'leri, RAS API'leri, Sistem Tray uygulamaları, Menü ve araç
çubukları, Windows API'leri, Liste kontrolleri, Gruplandırma kontrolleri, Görüntü kontrolleri, Grid kontrolleri, Kontrol olayları, Delphi 7 ile
Veritabanı tasarımı, Grafik kontrolleri, System kontrolleri, Win 3.1 kontrolleri, BDE bileşenleri, ADO bileşenleri, Data controls bileşenleri,
SQL ile veri sorgulama, Windows'ta yazdırma teknikleri, QReport ile rapor hazırlama, RAVE bileşenleri ile rapor hazırlama, Delphi
uygulamalarını dağıtma, Web Server uygulamaları, Console uygulamaları, Denetim masası uygulamaları, Active form uygulamaları,
İnternet sunucu - İstemci uygulamaları, Indy Server, Indy Clients bileşenleri
İçindekiler
İÇİNDEKİLER
1.Kısım- 1.Bölüm
Delphi 7 IDE’ ye Bakış ............................................................................................................ 56
Delphi Nedir? ...........................................................................................................................................56
Delphi’ yi başlatın .....................................................................................................................................56
Delphi IDE(Integrated Development Environment) .......................................................................... 56
Menüler ve araç çubukları ............................................................................................................... 57
Standart Araç çubuğu ...............................................................................................................................58
View-Görünüm araç çubuğu ......................................................................................................................59
Desktop-Masaüstü araç çubukları ..............................................................................................................59
Debug Araç çubuğu ..................................................................................................................................59
İnternet Araç çubuğu .................................................................................................................................59
Component Paleti, Form ve Object İnspector penceresi.................................................................. 60
Component paleti .........................................................................................................................................60
Yeni Componentler Ekleme ...........................................................................................................................60
Component Şablonları (Template) oluşturma ..................................................................................................61
Örnek:Bileşen şablonu oluşturma ...............................................................................................................61
Form ...........................................................................................................................................................63
Yeni Formlar Ekleme.................................................................................................................................63
Object İnspector ...........................................................................................................................................63
Object TreeView ..........................................................................................................................................64
Code Editor .................................................................................................................................................64
Kod penceresi özellikleri ............................................................................................................................65
Kod tamamlama .......................................................................................................................................65
Kod parametreleri .....................................................................................................................................66
Değişken içeriklerini göster ........................................................................................................................66
Tanımlama Tooltipleri ................................................................................................................................66
Kod Şablonları..........................................................................................................................................67
Yeni kod şablonları tanımlamak .....................................................................................................................68
Class Completion .....................................................................................................................................70
Kod Browse .............................................................................................................................................71
Diagram Sayfası ............................................................................................................................. 72
Forma ait kodu gösterme ..............................................................................................................................73
Code Explorer ................................................................................................................................ 74
Project Manager ............................................................................................................................. 75
Project Browser .............................................................................................................................. 75
To –Do listeleri ............................................................................................................................... 76
Object Repository ........................................................................................................................... 77
Delphi’de Kullanılan Dosya Tipleri .................................................................................................. 78
Delphi IDE tarafından oluşturulan dosyalar ..................................................................................................79
Bölüm Özeti .................................................................................................................................... 79
Delphi 7…Zeydin PALA 2
2.Bölüm
Delphi ile Programlama ........................................................................................................... 81
Öğrenci Kayıt uygulaması ............................................................................................................... 81
Yeni bir proje başlatın ...........................................................................................................................81
Formun rengini değiştirin .......................................................................................................................81
Form üzerine Component ekleyin...........................................................................................................82
Bileşenleri hizalayın ..............................................................................................................................83
Elemanların etiketleri değiştirin ..............................................................................................................84
Yazı tipini değiştirin ..............................................................................................................................85
Elemanların adlarını değiştin .................................................................................................................86
Başlangıç seçenekleri düzenleyin ..........................................................................................................87
Listeye eleman ekleyin..........................................................................................................................89
Listedeki elemanları silin .......................................................................................................................90
Programı kapatacak kodu yazın .........................................................................................................90
Programı Çalıştırın ve test edin ..........................................................................................................90
Çalışma zamanı hataları için önlem alın ..............................................................................................91
Programı kaydedin ............................................................................................................................92
Hesap makinesi uygulaması ........................................................................................................... 92
Yeni bir uygulama başlatın ....................................................................................................................92
Formu tasarımını yapın .........................................................................................................................92
Bileşenlerin özelliklerini değiştirin ...........................................................................................................93
Düğmeler için program kodu yazın .........................................................................................................93
Programı çalıştırın ................................................................................................................................94
Değişken kullanarak hesap yapma .................................................................................................................94
Başlangıç İçin Pratik Bilgiler ........................................................................................................... 95
Gerekli Yerlere Açıklama Yazın .................................................................................................................99
Bölüm Özeti .................................................................................................................................. 100
3.Bölüm
Veri Tipleri, Değişkenler ve Sabitler .......................................................................................... 101
Veri tipleri ..................................................................................................................................................101
Basit Tipler ................................................................................................................................... 102
Sıralı tipler .................................................................................................................................................102
Tamsayı tipleri ........................................................................................................................................102
Character tipler .......................................................................................................................................103
Boolean Tipler ........................................................................................................................................103
Enumerated-Sayılabilir tipler ....................................................................................................................103
Subrange-aralık sınırlı tipler .....................................................................................................................105
Örnek:Subrange tipler .............................................................................................................................105
Real-ondalıklı tipler .....................................................................................................................................105
String tipler .................................................................................................................................. 106
Null-terminated stringler ile çalışma ..........................................................................................................108
Structured-Yapısal tipler ............................................................................................................... 108
Küme Tipleri ..............................................................................................................................................108
3 İçindekiler
Örnek:Kümeler .......................................................................................................................................108
Bir küme üzerinde yapılabilecek işlemler ve operatörler ..............................................................................109
Birleşim (+) ............................................................................................................................................109
Kesişim (*) .............................................................................................................................................109
Fark (-) ..................................................................................................................................................109
Kümeler üzerinde yapılabilecek karşılaştırma işlemleri ise şunlardır. ............................................................109
Eşit (=), Eşit Değil (<>) ............................................................................................................................109
Kapsama (>=,<=)....................................................................................................................................109
İçinde Bulunma (In) .................................................................................................................................109
Örnek:İlk karakteri tespit et ......................................................................................................................109
Diziler .......................................................................................................................................................110
Statik diziler ...........................................................................................................................................110
Çok boyutlu diziler ..................................................................................................................................111
Dinamik Dizi tanımlama ...........................................................................................................................111
Örnek:Dinamik dizi ..................................................................................................................................111
Çok Boyutlu Dinamik Dizi ........................................................................................................................112
Bir diziye ilk değer atama.........................................................................................................................112
Kayıt Tipleri ...............................................................................................................................................112
Pointer kullanımı .......................................................................................................................... 114
Pointerler nasıl çalışır .................................................................................................................................114
Pointerin Barındıracağı Adres ......................................................................................................................115
Pointerin Gösterdiği Değer ..........................................................................................................................115
Örnek:Pointer 1 ......................................................................................................................................115
Örnek:Pointer 2 ......................................................................................................................................116
Örnek:Pointer 3 ......................................................................................................................................117
Örnek:Pointer 4 ......................................................................................................................................117
Örnek:Pointer 5 ......................................................................................................................................118
Örnek:Pointer 6 ......................................................................................................................................119
Örnek:Pointer 7 ......................................................................................................................................119
Örnek:Pointer 8 ......................................................................................................................................121
Örnek:Pointer 9 ......................................................................................................................................123
Örnek:Pointer 10 ....................................................................................................................................125
Prosedürel tipler ........................................................................................................................... 125
Variant tipler ................................................................................................................................. 126
Variant tip dönüşümleri ...............................................................................................................................126
OleVariant .................................................................................................................................................127
Tipler arasındaki uyumluluk.......................................................................................................... 127
Değişkenler .................................................................................................................................. 128
Değişkenin adı nasıl seçilmelidir? ................................................................................................................128
Değişkenin adresi .......................................................................................................................................128
Değişkenin tipi ...........................................................................................................................................128
Değişkenler nerede tanımlanır .....................................................................................................................129
Değişkenin içeriği .......................................................................................................................................129
Statik Değişken Tanımlama .........................................................................................................................129
Örnek:Değerini hatırlamayan değişken .....................................................................................................130
Örnek:Değerini hatırlayan değişken ..........................................................................................................131
Sabit tanımı ...............................................................................................................................................131
Sabit diziler tanımlama................................................................................................................................132
Delphi 7…Zeydin PALA 4
4.Bölüm
Prosedür ve Fonksiyonlara Giriş ............................................................................................. 135
Prosedürler ve fonksiyonlar .........................................................................................................................135
Prosedürler .................................................................................................................................. 135
Örnek:Prosedür ......................................................................................................................................136
Prosedür çağırma .......................................................................................................................................136
Fonksiyonlar ................................................................................................................................ 138
Örnek: faktöriyel .....................................................................................................................................138
Fonksiyon çağırma .................................................................................................................................139
Örnek:Faktöriyel hesapla .........................................................................................................................139
Örnek:Kombinasyon ...............................................................................................................................140
Örnek:1000 den küçük sayıyı at ...............................................................................................................140
Örnek: basamak ayırma ..........................................................................................................................141
Örnek:İfadeyi ters çevir ...........................................................................................................................141
Geriye birden fazla değer dönmesi ...............................................................................................................142
Örnek:Reel ve ondalık kısımlar ................................................................................................................142
Prosedür ve Altprogram Bildirisi ...................................................................................................................142
Örnek: Prosedür önceliği .........................................................................................................................142
Overload fonksiyonlar .................................................................................................................................144
Varsayılan parametreli prosedür tanımlama ..................................................................................................145
Olay Altprogramları ...................................................................................................................... 145
Program Bloklarının Yapısı .................................................................................................... 146
UNIT deklarasyonu .....................................................................................................................................147
Uses deklarasyonu .....................................................................................................................................147
Class/interface deklarasyonu .......................................................................................................................147
Tanımlanan İfadelerin Geçerlilik Aralığı ..................................................................................... 150
Değişkenlerin Local veya Global’liği ............................................................................................. 150
İki Prosedürün Aynı Değişkeni Kullanması ....................................................................................................151
İki Unit’in Aynı Değişkeni Kullanması ............................................................................................................152
İki Unit’in Aynı Prosedürü Kullanması ...........................................................................................................152
Prosedürden Forma Ait Kontrolleri Kullanma .................................................................................................154
Bölüm Özeti .................................................................................................................................. 155
5.Bölüm
Karar Yapıları ve Döngüler ..................................................................................................... 157
Karar yapıları ................................................................................................................................ 157
if Yapısı .....................................................................................................................................................157
Örnek:if- Then-else .................................................................................................................................158
5 İçindekiler
6.Bölüm
Delphi Component Library kullanma ......................................................................................... 171
Nesneler(Objects), Bileşenler(Components) ve Kontroller(Controls) ............................................ 172
TObject dalı .................................................................................................................................. 173
TMouse .....................................................................................................................................................173
Özellikler ...................................................................................................................................................173
MousePresent ........................................................................................................................................173
Örnek:Fare varmı?..................................................................................................................................174
WheelPresent ........................................................................................................................................174
Capture .................................................................................................................................................174
CursorPos..............................................................................................................................................174
Örnek:Fareyi takip et ...............................................................................................................................174
TPrinter ........................................................................................................................................ 175
Özellikler ...................................................................................................................................................175
Orientation .............................................................................................................................................175
PageNumber ..........................................................................................................................................175
Printers ..................................................................................................................................................175
Örnek:Tanımlı yazıcıları tesbit etme..........................................................................................................175
PrinterIndex ...........................................................................................................................................176
Printing ..................................................................................................................................................177
Aborted..................................................................................................................................................177
Fonts .....................................................................................................................................................177
Canvas ..................................................................................................................................................177
Title .......................................................................................................................................................177
Metotlar .....................................................................................................................................................177
Delphi 7…Zeydin PALA 6
BeginDoc,EndDoc ..................................................................................................................................177
Abort .....................................................................................................................................................177
NewPage ...............................................................................................................................................177
Windows’ ta yazdırma teknikleri ................................................................................................... 178
Metin Yazdırma ......................................................................................................................................178
Listeleri Yazdırma ...................................................................................................................................178
Memo Kontrolünü Yazdırma ....................................................................................................................178
StringGrid Kontrolünü Yazdırma ...............................................................................................................179
Örnek:Bir belgeyi Qreport bileşenleri ile yazdırma ......................................................................................179
Formu Yazdırma ........................................................................................................................................180
Resim Yazdırma ........................................................................................................................................180
Örnek:Dosyadaki resmi yazdırma .............................................................................................................180
Örnek:Dosyadaki resmi büyüterek yazdırma ..............................................................................................181
Örnek:Dosyadaki resmi ortalayarak yazdırma ............................................................................................181
Tablo Çizme ..............................................................................................................................................181
Örnek:Tablo çiz ......................................................................................................................................181
TPersistent dalı ............................................................................................................................ 187
TClipboard.................................................................................................................................... 187
Özellikler ...................................................................................................................................................187
AsText ...................................................................................................................................................187
Metotlar .....................................................................................................................................................187
Clear .....................................................................................................................................................187
Assign ...................................................................................................................................................187
Open, Close ...........................................................................................................................................188
HasFormat(Format) ................................................................................................................................188
SetComponent(Component: TComponent) ................................................................................................188
GetComponent(Owner, Parent: TComponent): ..........................................................................................188
TComponent dalı .......................................................................................................................... 189
TApplication (Uygulamanızla ilgili özellikler) ................................................................................. 189
Özellikler ...................................................................................................................................................189
Active ....................................................................................................................................................189
EXEName ..............................................................................................................................................190
HelpFile .................................................................................................................................................190
ShowHint ...............................................................................................................................................190
Hint .......................................................................................................................................................190
HintPause ..............................................................................................................................................191
Icon .......................................................................................................................................................191
Örnek:İkon show ....................................................................................................................................191
Title .......................................................................................................................................................192
MainForm ..............................................................................................................................................192
Metotlar .....................................................................................................................................................192
HelpCommand(Command: Word; Data: Longint) .......................................................................................192
HelpContext(Context: THelpContext) ........................................................................................................193
Minimize ................................................................................................................................................193
ProcessMessages ..................................................................................................................................193
Örnek: ProcessMessages ........................................................................................................................193
Olaylar ......................................................................................................................................................194
Örnek:Sistem menüsü .............................................................................................................................195
7 İçindekiler
7.Bölüm
BaseCLX kütüphanesine giriş ................................................................................................. 229
BaseCLX kütüphanesini kullanma ................................................................................................ 229
Streamleri kullanma ...................................................................................................................... 229
Okuma ve yazma için kullanılan stream metotları ..........................................................................................229
Read ve Write ........................................................................................................................................229
ReadBuffer ve WriteBuffer .......................................................................................................................230
Componentleri okuma ve yazma ..................................................................................................................230
Stringleri okuma ve yazma ..........................................................................................................................230
Bir streamden diğerine veri kopyalama .........................................................................................................231
Streamın pozisyon ve büyüklüğünü ayarlama................................................................................................232
Belirli bir pozisyonu arama .......................................................................................................................232
Position ve Size özellikleri .......................................................................................................................232
Dosyalarla çalışma ....................................................................................................................... 233
Dosya Streamleri kullanma ..........................................................................................................................233
Dosya oluşturma ve açma .......................................................................................................................233
Dosya diskte mi..........................................................................................................................................234
Dosya silme ...........................................................................................................................................234
Dosya arama .............................................................................................................................................234
Örnek:Önceki ve sonraki dosyalar ............................................................................................................236
Örnek:Dosya arama ................................................................................................................................237
Örnek:Altdizinler ile beraber ara ...............................................................................................................238
Dosya adını değiştirme ...............................................................................................................................239
Dosya uzantısını öğrenme ..........................................................................................................................240
Dosya adını öğrenme .................................................................................................................................240
Dosya yolunu öğrenme ...............................................................................................................................240
Dosyanın bulunduğu sürücüyü öğrenme .......................................................................................................240
Dosya uzantısını değiştirme ........................................................................................................................241
Dosya Tarihi ..............................................................................................................................................241
Dosya Özellikleri ........................................................................................................................................241
Sistem Registry ve Inı dosyalarla çalışma ..................................................................................... 242
TIniFile ve TMemIniFile sınıflarını kullanma ..................................................................................................242
TRegistry...................................................................................................................................................243
Registry Yapısı .......................................................................................................................................243
Registry veri tipleri ......................................................................................................................................244
Özellikler ...................................................................................................................................................244
RootKey ................................................................................................................................................244
CurrentPath ...........................................................................................................................................244
CurrentKey ............................................................................................................................................245
Metotlar .....................................................................................................................................................245
OpenKey (const Key: String; CanCreate: Boolean): Boolean .......................................................................245
OpenKeyReadOnly(const Key: String): Boolean ........................................................................................245
CloseKey ...............................................................................................................................................245
CreateKey(const Key: String): Boolean; ....................................................................................................245
DeleteKey(const Key: String): Boolean; ....................................................................................................246
GetKeyNames, GetValueNames(Strings: TStrings) ....................................................................................246
KeyExists (const Key: String): Boolean .....................................................................................................246
9 İçindekiler
ValueExists ............................................................................................................................................246
HasSubKeys: Boolean ............................................................................................................................246
ReadBool, ReadCurrency, ReadDate, ReadDateTime, ReadFloat, ReadInteger, ReadString, ReadTime, SaveKey
(altanahtar) ............................................................................................................................................246
WriteBool, WriteCurrency, WriteDate, WriteDateTime, WriteExpandString, WriteFloat, WriteInteger, WriteString,
WriteTime (AltAnahtar, Değer) .................................................................................................................247
Örnek:Form özelliklerini Registy’e kaydetme .............................................................................................247
Örnek:Registry den bilgi okuma................................................................................................................249
Örnek:Com portları okuma.......................................................................................................................250
Örnek:Windows Dizinlerini öğrenme .........................................................................................................250
Listelerle çalışma.......................................................................................................................... 251
Liste elemanları ekleme...........................................................................................................................251
Listelerden eleman silme .........................................................................................................................251
Liste elemanlarına erişme ........................................................................................................................251
Liste elemanlarını sıralama ......................................................................................................................251
String Listeler ile çalışma ............................................................................................................. 252
String listeleri kaydetme ve yükleme.............................................................................................................252
String listelere eleman ekleme .....................................................................................................................253
Kısa ömürlü string listeleri ...........................................................................................................................253
Uzun ömürlü string listeleri ..........................................................................................................................254
Örnek:Liste oluştur ve kaydet ...................................................................................................................254
Listedeki eleman sayısı bulma .....................................................................................................................255
Listedeki bir elemana ulaşma ......................................................................................................................255
Listede elemanın olup olmadığını öğrenme ...................................................................................................255
Liste elemanları arasında dolaşmak..........................................................................................................256
Araya eleman ekleme .................................................................................................................................256
Listeden eleman silme ................................................................................................................................256
Bir listeyi diğerine aktarma ..........................................................................................................................256
Standart Fonksiyonlar .......................................................................................................... 257
Matematiksel ve Lojik Fonksiyonlar .............................................................................................. 257
Yuvarlatma fonksiyonlar ..............................................................................................................................258
Floor, Ceil, Int, Frac ................................................................................................................................258
Üstel işlemler için kullanılan fonksiyonlar ......................................................................................................258
Power, IntPower, Sqr, LdExp,Exp .............................................................................................................258
Sqrt (Karekök) ...........................................................................................................................................259
Hypot (Hipotenüs) ......................................................................................................................................259
Abs (Mutlak Değer) ....................................................................................................................................260
LogN, Log2, Ln (Logaritma) .........................................................................................................................260
Pi (Pi sayısı) ..............................................................................................................................................260
Açı Dönüşümleri .........................................................................................................................................260
Örnek:Açı dönüştür .................................................................................................................................261
RadToCycle, CycleToRad (Açı Periyodu) .....................................................................................................262
Trigonometrik fonksiyonlar ..........................................................................................................................262
Ters Trigonometrik fonksiyonlar ...................................................................................................................263
Hyperbolik fonksiyonlar ...............................................................................................................................263
Ters Hyperbolik Fonksiyonlar ......................................................................................................................264
Poly (Polinom fonksiyonları) ........................................................................................................................264
Shl, Shr (Bitleri Sola ve Sağa Kaydırma) .......................................................................................................265
Delphi 7…Zeydin PALA 10
RightStr(String,Adet) ...............................................................................................................................278
MidStr(String,Başlangıç,Adet) ..................................................................................................................278
Örnek:Kayan yazı ...................................................................................................................................278
Ters Çevirme .............................................................................................................................................278
ReverseString(String) ..............................................................................................................................279
Silme ........................................................................................................................................................279
Delete(str, baslangıç, adet) ......................................................................................................................279
Araya Ekleme ............................................................................................................................................279
Insert(str1,str2,baslangıç) ........................................................................................................................279
StuffString(Str1,yer,adet,str2); ..................................................................................................................279
Arama .......................................................................................................................................................279
Pos(str1,str2) .........................................................................................................................................279
Örnek:Büyük-küçük.................................................................................................................................280
AnsiContainsStr(Str1,Str2), AnsiContainsText(Str1,Str2) ............................................................................280
Length (Uzunluğunu Bulma) ........................................................................................................................281
Length(str) .............................................................................................................................................281
Değiştirme .................................................................................................................................................281
AnsiReplaceText, AnsiReplaceStr(Str1,Str2;Str3) ......................................................................................281
Trim, TrimLeft, TrimRight (Boşlukları Atma) ..................................................................................................281
Trim (Str) ...............................................................................................................................................281
TrimLeft (Str) ..........................................................................................................................................281
TrimRight (Str)........................................................................................................................................281
String Formatlama ......................................................................................................................................281
Format(FormatMetni, Parametreler)..........................................................................................................281
Örnek:Formatlı çıkış................................................................................................................................282
Tarih ve Zaman Fonksiyonları ....................................................................................................... 283
Date (Tarih) ...............................................................................................................................................283
Date ......................................................................................................................................................284
Örnek:Tarih ............................................................................................................................................284
Time (Saat) ...............................................................................................................................................284
Time ......................................................................................................................................................284
Örnek:saat ayarla ...................................................................................................................................284
Now (Tarih ve Saat)....................................................................................................................................285
Now ......................................................................................................................................................285
DayOfWeek (Haftanın günü) .......................................................................................................................285
DayOfWeek(DTarih) ...............................................................................................................................285
Örnek:Gün bul ........................................................................................................................................285
Tarih Dönüşümleri ......................................................................................................................................285
DateToStr(DTarih) ..................................................................................................................................286
TimeToStr(DSaat)...................................................................................................................................286
DateTimeToStr(DTarihSaat) ....................................................................................................................286
StrToDate(STarih) ..................................................................................................................................286
StrToTime(SSaat) ...................................................................................................................................286
StrToDateTime(STarihSaat) ....................................................................................................................286
EncodeDate(Yıl, Ay, Gün) .......................................................................................................................286
EncodeTime(Saat, Dakika, Saniye, MiliSaniye) ..........................................................................................286
DecodeDate(DTarih,Yıl, Ay, Gün) .............................................................................................................286
DecodeTime(DSaat,Saat,Dakika, Saniye, MiliSaniye) ................................................................................286
DateTimeToSystemTime(DTarihSaat;var SystemTime:TSystemTime) .........................................................287
ÖRNEK: Tarih-saat ayarı .........................................................................................................................287
Delphi 7…Zeydin PALA 12
Convert(Deger,OlcuBiriminden1,OlcuBiriminden2,OlcuBirimine1,OlcuBirimine2) ...........................................301
Farklı Ölçü Birimleriyle İşlem Yapma ............................................................................................................301
ConvUnitAdd(Değer1; ÖlçüBirimi; Değer2; ÖlçüBirimi, SonuçBirimi) ............................................................302
ConvUnitDiff(Değer1; ÖlçüBirimi; Değer2; ÖlçüBirimi, SonuçBirimi) .............................................................302
ConvUnitCompareValue(Değer1; ÖlçüBirimi; Değer2; ÖlçüBirimi, SonuçBirimi) ............................................302
Komut Satırı Parametreleri............................................................................................................ 302
ParamCount (Parametre Sayısı) ..................................................................................................................302
ParamCount ...........................................................................................................................................302
ParamStr (Parametre İçeriği) .......................................................................................................................302
ParamStr(ParametreNo) ..........................................................................................................................303
Bölüm Özeti .................................................................................................................................. 304
8.Bölüm
Hata Yakalama ................................................................................................................... 305
try – except ................................................................................................................................................305
Örnek:Hata yakalama .............................................................................................................................306
Örnek:Hata yakalama .............................................................................................................................308
try – finally .................................................................................................................................................308
Örnek:Hata giderme ................................................................................................................................308
OnException(Sender: TObject; E: Exception) ................................................................................................309
2.Kısım-9.Bölüm
Mesaj Pencereleri ve Bilgi Giriş kutuları ..................................................................................... 318
Delphi Mesaj Pencereleri .............................................................................................................. 318
ShowMessage ...........................................................................................................................................318
ShowMessagePos......................................................................................................................................319
MessageDlg Fonksiyonu .............................................................................................................................319
Örnek:Çıkarken sor .................................................................................................................................321
Örnek:Eleman ekle .................................................................................................................................321
Windows Mesaj Pencereleri .......................................................................................................... 324
Örnek: Çıkmadan önce sor ......................................................................................................................326
Bilgi Giriş Pencereleri ................................................................................................................... 327
InputBox Fonksiyonu ..................................................................................................................................327
Örnek: Not gir .........................................................................................................................................327
InputQuery Fonksiyonu ..............................................................................................................................328
Örnek:Özel mesaj penceresi ....................................................................................................................329
Delphi 7…Zeydin PALA 14
10.Bölüm
Formlarla Çalışma ............................................................................................................... 331
SDI Formlar .................................................................................................................................. 332
Form özellikleri...........................................................................................................................................333
Caption ..................................................................................................................................................333
FormStyle ..............................................................................................................................................333
AutoScroll ..............................................................................................................................................333
BorderStyle ............................................................................................................................................333
Örnek:Transparen form ...........................................................................................................................334
AlphaBlend, AlphaBlendValue .................................................................................................................335
TransparentColor, TransparentColorValue ................................................................................................336
BorderIcons ...........................................................................................................................................336
Position .................................................................................................................................................337
WindowState ..........................................................................................................................................337
Örnek:Başlığı kaydır ...............................................................................................................................338
Active ....................................................................................................................................................338
ActiveControl..........................................................................................................................................338
Örnek:Yardım et .....................................................................................................................................338
ClientHeight, ClientWidth, ClientOrigin, ClientRect .....................................................................................338
Örnek:Oynayan top .................................................................................................................................339
Icon .......................................................................................................................................................339
Örnek:İkonları göster...............................................................................................................................339
KeyPreview ............................................................................................................................................340
Örnek:Boyut değiştir ...............................................................................................................................340
PrintScale ..............................................................................................................................................340
ControlCount,Controls[Index] ...................................................................................................................341
Örnek:Kontrolleri pasif yap .......................................................................................................................341
ComponentCount, Components[Index] .....................................................................................................341
Örnek:Kontrolleri test et ...........................................................................................................................341
Canvas ..................................................................................................................................................342
Form metotları ...........................................................................................................................................342
Close.....................................................................................................................................................342
Print ......................................................................................................................................................342
GetFormImage .......................................................................................................................................342
ShowModal ............................................................................................................................................342
ScrollInView ...........................................................................................................................................342
Form Olayları .............................................................................................................................................343
Örnek:OnClose ......................................................................................................................................344
Örnek:Kontrolleri boyutlandır ...................................................................................................................344
Açılış Formu Düzenleme .............................................................................................................................345
MDI Formlar .................................................................................................................................. 348
Örnek:MDI form tasarımı .........................................................................................................................349
MDI form özellikleri .....................................................................................................................................350
MDIChildCount,MDIChildren[Index] ..........................................................................................................350
ActiveMDIChild .......................................................................................................................................351
TileMode................................................................................................................................................352
15 İçindekiler
WindowMenu .........................................................................................................................................352
Metotlar .....................................................................................................................................................353
ArrangeIcons, Tile, Cascade ....................................................................................................................353
Yatay döşe .............................................................................................................................................354
Dikey döşe .............................................................................................................................................354
Basamakla .............................................................................................................................................355
Simgeleri yerleştir ...................................................................................................................................355
Next, Previous ........................................................................................................................................356
MDI form olayları ........................................................................................................................................356
MDI form ve Child form menüleri ..................................................................................................................356
Wizard Kullanarak MDI Form Oluşturmak .....................................................................................................358
Hazır Formlar ................................................................................................................................ 363
Bir formun kopyasını alma ............................................................................................................ 368
Olaylar ......................................................................................................................................................384
OnApply ................................................................................................................................................384
Örnek:Fontlar .........................................................................................................................................384
11.Bölüm
Kontrol Elemanlarına Ait Olaylar.............................................................................................. 403
Özellikler, Metotlar ve olaylar ........................................................................................................ 403
Özellikler(Properties) ..................................................................................................................................403
Metotlar(Methods) ......................................................................................................................................404
17 İçindekiler
Olaylar(Events) ..........................................................................................................................................404
Kullanıcı olayları .....................................................................................................................................404
Sistem olayları........................................................................................................................................404
Uygulama olayları ..................................................................................................................................404
Olaylar nasıl kullanılır ..............................................................................................................................404
Kullanıcı tarafından tetiklenen olaylar ...........................................................................................................405
Örnek:OnClick-OnDblClick ......................................................................................................................405
Örnek:Hangi fare tuşu tıklandı ..................................................................................................................405
Örnek:Bilgi ver........................................................................................................................................406
Örnek: MouseDown,MouseUp .................................................................................................................407
Örnek:Mouse ile şekil çizme ....................................................................................................................408
Program tarafından otomatik olarak tetiklenen olaylar ....................................................................................409
Örnek:Anında hesapla.............................................................................................................................409
Örnek: Birbirini çağıran change olayları .....................................................................................................410
Örnek:Enter,Exit .....................................................................................................................................411
Klavye olayları ...........................................................................................................................................412
Örnek:Sadece rakam girilsin ....................................................................................................................412
Örnek:Edit kutuları arasında Enter tuşu ile dolaşma ...................................................................................413
Örnek:Hangi tuşlar basılı .........................................................................................................................414
Örnek:Ctrl+yön,Alt+yön ...........................................................................................................................414
Örnek:Tuş basılı mı.................................................................................................................................415
Örnek:Olayların meydana geliş sırası .......................................................................................................415
Birden fazla bileşen için ortak kod kullanma ................................................................................. 416
Örnek:Hesap makinesi ............................................................................................................................419
Bölüm Özeti .................................................................................................................................. 421
12.Bölüm
Delphi Kontrol Elemanları ...................................................................................................... 423
Metin Giriş Kontrolleri................................................................................................................... 423
Lines .....................................................................................................................................................470
PlainText ...............................................................................................................................................470
SelAttributes ..........................................................................................................................................470
PageRect ...............................................................................................................................................470
Paragraph ..............................................................................................................................................470
Paragraph.Alignment ..............................................................................................................................470
Paragraph.FirstIndent, Paragraph.LeftIndent, Paragraph.RightIndent ..........................................................471
Paragraph.Numbering .............................................................................................................................471
HideScrollBars .......................................................................................................................................471
Metotlar .....................................................................................................................................................472
Print(Başlık) ...........................................................................................................................................472
FindText(Aranan, Baslangıç, Uzunluk, Options) .........................................................................................472
Örnek:Seçili bölgede metin arama ............................................................................................................472
Örnek:RichEdit ile Editör tasarlama ..........................................................................................................472
Özellikler ...................................................................................................................................................486
Orientation .............................................................................................................................................486
Max,Min.................................................................................................................................................487
PageSize ...............................................................................................................................................487
LineSize ................................................................................................................................................487
Position .................................................................................................................................................487
SelStart .................................................................................................................................................487
SelEnd ..................................................................................................................................................487
TickMarks ..............................................................................................................................................487
TickStyle ................................................................................................................................................487
Olaylar ......................................................................................................................................................488
Örnek:TrackBar ile form boyutlandırma .....................................................................................................488
Örnek:TrackBar ile resim büyütme ve küçültme .........................................................................................489
TUpDown.............................................................................................................................. 490
Özellikler ...................................................................................................................................................490
Min,Max.................................................................................................................................................490
Orientation .............................................................................................................................................490
Position .................................................................................................................................................490
Örnek:Updown .......................................................................................................................................490
Özellikler ...................................................................................................................................................497
Enabled .................................................................................................................................................497
Cancel ...................................................................................................................................................498
Default...................................................................................................................................................498
Örnek:Düğme yerine Enter kullanma ........................................................................................................498
ModalResult ...........................................................................................................................................499
Örnek:ModalResult .................................................................................................................................499
Olaylar ......................................................................................................................................................501
Items.Insert(SatirNo,Eleman) ...................................................................................................................515
Items.Count ...........................................................................................................................................516
Items.Delete(Index).................................................................................................................................516
Items.Strings[ElemanNo] .........................................................................................................................516
Items.ExChange(Eleman1,Eleman2) ........................................................................................................516
Items.Move(Index,YeniIndex) ...................................................................................................................517
Örnek:Eleman taşı ..................................................................................................................................517
Items.IndexOf(Eleman) ...........................................................................................................................518
Örnek:Eleman listede mi? ........................................................................................................................518
Items.SaveToFile(DosyaAdı) ...................................................................................................................519
Items.LoadFromFile(DosyaAdı) ................................................................................................................519
Items.ItemIndex ......................................................................................................................................519
Örnek: Listelerin kullanımı .......................................................................................................................519
TopIndex ...............................................................................................................................................523
Örnek:Borç-alacak-bakiye .......................................................................................................................524
Sorted ...................................................................................................................................................525
Örnek:Sayı sıralama ...............................................................................................................................526
Columns ................................................................................................................................................527
MultiSelect .............................................................................................................................................528
SelCount,Selected[Index] ........................................................................................................................528
ExtendedSelect ......................................................................................................................................528
Style ......................................................................................................................................................528
ItemHeight .............................................................................................................................................528
ScrollWidth ............................................................................................................................................528
Metotlar .....................................................................................................................................................529
Clear .....................................................................................................................................................529
ItemAtPos(Pos: TPoint; Existing: Boolean) ................................................................................................529
Örnek:Ortadaki elemanı bul .....................................................................................................................529
Selected[Index] ......................................................................................................................................538
Örnek:Seçilen ürünlerin fiyatlarını hesapla.................................................................................................538
TMonthCalendar(Takvim)..................................................................................................... 563
Özellikler ...................................................................................................................................................565
Date ......................................................................................................................................................565
MinDate, MaxDate ..................................................................................................................................565
WeekNumbers .......................................................................................................................................565
FirstDayOfWeek .....................................................................................................................................566
MultiSelectEndDate ................................................................................................................................566
Olaylar ......................................................................................................................................................566
ShellComboBox .........................................................................................................................................575
ShellListView .............................................................................................................................................575
Örnek: ShellComboBox, ShellListView, ShellTreeView ...............................................................................576
Gruplandırma kontrolleri............................................................................................................... 577
TPageControl......................................................................................................................... 585
Özellikler ...................................................................................................................................................586
ActivePage ............................................................................................................................................586
MultiLine ................................................................................................................................................586
TabPosition ............................................................................................................................................587
Olaylar ......................................................................................................................................................587
TabWidth ...............................................................................................................................................589
Olaylar ......................................................................................................................................................590
Örnek:Dosyaları oku ...............................................................................................................................590
TBevel.................................................................................................................................. 635
29 İçindekiler
Özellikler ...................................................................................................................................................636
Style ......................................................................................................................................................636
Shape ...................................................................................................................................................636
TImageList............................................................................................................................ 642
Özellikler ...................................................................................................................................................643
Height,Width ..........................................................................................................................................643
AllocBy ..................................................................................................................................................643
BkColor .................................................................................................................................................643
BlendColor .............................................................................................................................................643
Count ....................................................................................................................................................643
Close.....................................................................................................................................................668
Save .....................................................................................................................................................669
Play, Pause, Stop, Next, Previous ,Step, Back, Eject, StartRecording ..........................................................669
PauseOnly .............................................................................................................................................669
Resume .................................................................................................................................................669
Rewind ..................................................................................................................................................669
Olaylar ......................................................................................................................................................669
Örnek:Ses ve film dosyalarını çalma .........................................................................................................670
Örnek:Geçen süreyi göster ......................................................................................................................674
Örnek:AVI,MID,WAV çal ..........................................................................................................................674
Örnek: mp3 dosyası çalma ......................................................................................................................676
DirLabel .................................................................................................................................................695
FileList...................................................................................................................................................695
ItemHeight .............................................................................................................................................695
IntegralHeight .........................................................................................................................................695
Metotlar .....................................................................................................................................................695
GetItemPath[Index] .................................................................................................................................695
Update ..................................................................................................................................................695
Olaylar ......................................................................................................................................................695
OnChange(Sender: TObject) ...................................................................................................................695
13.Bölüm
Menü ve Araç Çubuğu Kontrolleri ............................................................................................ 701
Images ..................................................................................................................................................714
Örnek:Resimli menüler ............................................................................................................................715
TImageList bileşeni ile menülere resim ekleme .........................................................................................715
Örnek: Grafik menüler oluşturma ..............................................................................................................717
TPopupMenu........................................................................................................................ 722
Örnek:Popup menü .................................................................................................................................723
Örnek:Açılan menü .................................................................................................................................724
14.Bölüm
Delphi ile Grafik Programlama ................................................................................................ 757
Canvas ..................................................................................................................................................758
Şekil Çizme................................................................................................................................... 758
Canvas.MoveTo(X, Y) .............................................................................................................................758
Canvas.LineTo(X, Y) ...............................................................................................................................758
Örnek:Fareyle Çizgi çizme .......................................................................................................................758
Canvas.Rectangle(X1, Y1, X2, Y2) ...........................................................................................................759
Örnek:İçi dolu dikdörtgen çizme ...............................................................................................................760
Canvas.RoundRect(X1, Y1, X2, Y2, X3, Y3) ..............................................................................................760
Canvas.FrameRect(Rect: TRect)..............................................................................................................760
Canvas.PolyLine(Points: array of TPoint) ..................................................................................................761
Örnek:Dikdörtgen çizme ..........................................................................................................................761
Canvas.Polygon(Points: array of TPoint) ...................................................................................................763
Canvas.Ellipse(X1, Y1, X2, Y2) ................................................................................................................764
Örnek:İçi dolu Elips çizme .......................................................................................................................764
Örnek:İçi taranmış elips çizme .................................................................................................................764
Örnek:Elips içinde resim ..........................................................................................................................765
Örnek:Elips ve dikdörtgen ........................................................................................................................766
Örnek:Fare ile çizim yapma .....................................................................................................................766
Canvas.Pie(X1, Y1, X2, Y2,X3,Y3,X4,Y4) .................................................................................................769
Canvas.Arc(X1, Y1, X2, Y2,X3,Y3,X4,Y4) .................................................................................................769
Canvas.Chord(X1,Y1,X2,Y2,X3,Y3,X4,Y4) ................................................................................................769
Canvas.Pixels[X, Y] ................................................................................................................................770
Örnek:Tıklanan yere nokta koy .................................................................................................................770
Örnek:Matamatiksel grafik çizme ..............................................................................................................770
Örnek:Pixel ............................................................................................................................................771
Resim Döndürme .......................................................................................................................................772
Örnek:Resim dönder ...............................................................................................................................773
Örnek:Sürekli dönder ..............................................................................................................................774
Örnek:Hızlı çevir .....................................................................................................................................775
Örnek:İstenilen büyüklükte dikdörtgen çizme .............................................................................................776
Yazı Yazma ................................................................................................................................... 777
Canvas.Font ..........................................................................................................................................777
Canvas.TextOut(X, Y, Text) .....................................................................................................................777
Örnek:Form üzerine grafik yazı yazma ......................................................................................................777
Örnek:Spiral yazı yazma .........................................................................................................................778
Canvas.TextHeight,TextWidth(Text) .........................................................................................................779
Örnek:Satır çizme ...................................................................................................................................779
Canvas.TextRect(Rect: TRect; X, Y, Text).................................................................................................780
Örnek:Alan içinde yazma .........................................................................................................................780
Örnek:Transparen yazı yazma .................................................................................................................780
Örnek:Dikdörtgen içinde yazı yazma .........................................................................................................781
Örnek:Çok satırlı yazı yazma ...................................................................................................................782
Örnek:Açılı yazı yazma ...........................................................................................................................782
Örnek:Dikey yazı yazma ..........................................................................................................................783
35 İçindekiler
Boyama.....................................................................................................................................................784
Canvas.FillRect(Rect: TRect) ...................................................................................................................784
Örnek: silme ...........................................................................................................................................784
Örnek:İçi dolu dikdörtgen çizme ...............................................................................................................784
Canvas.FloodFill(X, Y, Renk; FillStyle: TFillStyle).......................................................................................785
Çizim Şeklini Belirleme ...............................................................................................................................785
Canvas.Pen.Color:..................................................................................................................................785
Örnek:Renk geçişi ..................................................................................................................................785
Canvas.Pen.Width ..................................................................................................................................786
Canvas.Pen.Style ...................................................................................................................................786
Canvas.Pen.Mode ..................................................................................................................................786
Örnek:Üç boyutlu metin yaz .....................................................................................................................787
Boyama Şeklini Belirleme ............................................................................................................. 788
Canvas.Brush.Color ................................................................................................................................788
Canvas.Brush.Style: ...............................................................................................................................788
Örnek:Transparent resim çizme ...............................................................................................................788
Kopyalama, Büyültme, Küçültme, Negatifini Alma ........................................................................ 788
Canvas.Draw(X, Y, Graphic: TGraphic) .....................................................................................................789
Örnek: Resim döşeme.............................................................................................................................789
Örnek:Resim birleştirme ..........................................................................................................................791
Canvas.StretchDraw(Rect: TRect; Graphic: TGraphic) ...............................................................................792
Örnek:Form üzerine resim aktarma ..........................................................................................................793
Örnek:Ekranın fotoğrafını çek ..................................................................................................................793
Örnek:Form üzerine resim döşeme ...........................................................................................................793
Örnek:Metefile kaydetmek .......................................................................................................................793
Canvas.CopyRect(Hedef: TRect; Canvas: TCanvas; Kaynak: TRect)...........................................................794
Örnek:Resim büyütme yada küçültme .......................................................................................................794
Canvas.CopyMode .................................................................................................................................795
Canvas.BrushCopy(Hedef: TRect; Resim: TBitmap; const Kaynak: TRect; Renk: TColor); .............................796
Fare ile Seçme .............................................................................................................................. 796
Canvas.DrawFocusRect(Rect: TRect) ......................................................................................................796
Resource(*.res) Dosyalarından Resim Yükleme ........................................................................... 798
Bitmap resim yüklemek ...............................................................................................................................798
Kullanıcı tanımlı cursor yükleme ..................................................................................................................799
Örnek:Özel kürsor ..................................................................................................................................800
Bölüm Özeti .................................................................................................................................. 801
3.Kısım-15.Bölüm
Drag & Drop (Sürükle-Bırak) ................................................................................................... 804
Özellikler ...................................................................................................................................................805
DragCursor ............................................................................................................................................805
DragMode ..............................................................................................................................................805
Metotlar .....................................................................................................................................................805
BeginDrag( Immediate ) ..........................................................................................................................805
Dragging ................................................................................................................................................805
Örnek:Sürükle ........................................................................................................................................805
Delphi 7…Zeydin PALA 36
EndDrag(Drop) .......................................................................................................................................806
Olaylar ......................................................................................................................................................806
Örnek:Listeye eleman ekleme ve silme .....................................................................................................806
Örnek:Dosyaları sürükle ve bırak..............................................................................................................808
Drag & Dock ...................................................................................................................... 811
Örnek:Drag & Dock .................................................................................................................................812
Özellikler ...................................................................................................................................................813
Floating .................................................................................................................................................813
UseDockManager ...................................................................................................................................813
UndockHeight,UndockWidth ....................................................................................................................813
TBDockHeight, LRDockWidth ..................................................................................................................813
DockClientCount ....................................................................................................................................813
DockClients[Index] ..................................................................................................................................814
16.Bölüm
DDE & Link........................................................................................................................ 817
17.Bölüm
DLL Dosyası Yazma ............................................................................................................. 829
DLL Nasıl Yazılır ........................................................................................................................................829
Örnek: DLL 1..........................................................................................................................................831
Örnek:DLL 2 ..........................................................................................................................................832
Örnek:DLL 3 ..........................................................................................................................................833
DLL Dosyasında Form Kullanma .................................................................................................................834
Örnek: Form kullanan dll .........................................................................................................................834
DLL Dosyasında Debug ..............................................................................................................................836
Bölüm Özeti .................................................................................................................................. 837
18.Bölüm
Denetim Masası Uygulamaları Yazma ........................................................................................ 839
Denetim Masası Uygulamalarını Programdan Çalıştırma ................................................................................842
Örnek:Denetim masası uygulaması ..........................................................................................................843
Bölüm Özeti .................................................................................................................................. 843
19.Bölüm
API'LER ............................................................................................................................ 845
API Tanımı ................................................................................................................................................846
Apiler Hakkında Yardım Alma ......................................................................................................................847
Boş bellek miktarını öğrenme ......................................................................................................................849
Örnek:Bellek bilgileri ...............................................................................................................................849
Mikroişlemci tipini ve sayısını öğrenme .........................................................................................................850
Windows versiyonunu ve ortamını öğrenme ..................................................................................................850
Windowsu Kapatma....................................................................................................................................851
Windows “Hakkında” Penceresi ...................................................................................................................852
Örnek:ShellAbout ...................................................................................................................................852
Kontrolleri Taşıma ......................................................................................................................................852
Çalışan uygulamayı görev çubuğundan gizleme ............................................................................................852
Görev çubuğunu gizle .................................................................................................................................853
Örnek:Görev çubuğunu gizleme ve gösterme ............................................................................................853
Örnek:masa üstü simgelerini gizleme........................................................................................................853
CD-Kapağını Açıp Kapatma ........................................................................................................................854
Windows Seslerini Çalma ............................................................................................................................854
Örnek: MessageBeep ile sistem seslerini çalma.........................................................................................854
Flaş başlık .................................................................................................................................................855
Örnek:Yanıp sönen başlık .......................................................................................................................855
Program ve Belge Çalıştırma ........................................................................................................ 855
Örnek:Belge Çalıştırma ...........................................................................................................................856
Örnek: Web sayfasını açın 1 ....................................................................................................................856
Örnek:Bir web sayfasını açın 2 .................................................................................................................856
Örnek:E-mail programını çalıştırma ..........................................................................................................856
Delphi 7…Zeydin PALA 38
20.Bölüm
System Tray Uygulamaları ..................................................................................................... 883
dwMessage............................................................................................................................................883
lpData ...................................................................................................................................................883
Örnek System Tray Uygulaması ..................................................................................................................886
Örnek:Grafik modları ...............................................................................................................................890
Örnek:Fare hareketleri ............................................................................................................................894
Bölüm Özeti .................................................................................................................................. 895
4.Kısım-21.Bölüm
Veritabanı Kavramları ve Veritabanına bağlanma .......................................................................... 898
İlişkisel Veritabanı Modeli ............................................................................................................. 898
Veritabanı kavramları .................................................................................................................... 900
Database-Veritabanı ...............................................................................................................................900
Alias-Takma Ad ......................................................................................................................................900
Table-Tablo............................................................................................................................................900
39 İçindekiler
View-Görünüm .......................................................................................................................................900
Field-Alan ..............................................................................................................................................900
Record-Kayıt ..........................................................................................................................................901
SQL-Yapısal Sorgulama dili .....................................................................................................................901
Persistent Field ......................................................................................................................................901
Calculated Field-Hesaplanmış alan ..........................................................................................................901
Lookup Field-Arama alanı ........................................................................................................................901
Index-Dizin .............................................................................................................................................901
Key-Anahtar ...........................................................................................................................................901
Secondary Index –İkincil dizin ..................................................................................................................901
Cursor-Kayıt göstergesi ...........................................................................................................................901
Datasource-Veri kaynağı .........................................................................................................................901
Data Aware Components-Veri bağlantılı bileşenler .....................................................................................902
BDE -Veritabanı Motoru ..........................................................................................................................902
Transactions-Muameleler ........................................................................................................................902
Data Dictionary-Veri sözlüğü ....................................................................................................................902
Client/Server-İstemci/Sunucu ...................................................................................................................902
Veritabanına bağlanma ................................................................................................................. 903
Bölüm Özeti .................................................................................................................................. 906
22.Bölüm
DataBase / SQLExplorer ........................................................................................................ 907
Alias tanımlama ............................................................................................................................ 908
BDE Administrator ile Alias Tanımı...............................................................................................................910
Database Desktop ile Alias Tanımı...............................................................................................................910
Delphi Ortamında Alias’la erişim ..................................................................................................................911
Program Kodu ile Alias Tanımlama ..............................................................................................................911
Örnek:Alias tanımı ..................................................................................................................................911
Bölüm Özeti .................................................................................................................................. 912
23.Bölüm
Data Controls Elemanları ile Çalışma ........................................................................................ 913
24.Bölüm
TFields-Alan Bileşenleri ile Çalışma.......................................................................................... 961
Alan Türleri ................................................................................................................................................961
Dinamik Veri Alanları ..................................................................................................................................962
Statik Veri Alanları ..................................................................................................................................962
41 İçindekiler
25.Bölüm
BDE Bileşenleri ile çalışma .................................................................................................... 979
AutoEdit .................................................................................................................................................979
State .....................................................................................................................................................979
DataSource olayları ....................................................................................................................................980
Örnek:İçerik değişimini bildir ....................................................................................................................980
Özellikler ...................................................................................................................................................994
Mode .....................................................................................................................................................994
Transaction Kullanma ................................................................................................................... 995
Örnek:Transaction ..................................................................................................................................995
Sınırlamalar ...............................................................................................................................................998
Kayıt Arama İşlemleri ........................................................................................................... 998
Locate ve Lookup metodları ile arama ..........................................................................................................998
Locate ...................................................................................................................................................998
Örnek:kayıt ara .......................................................................................................................................998
Örnek:Birden Fazla Alan Üzerinde Arama .................................................................................................999
Lookup ................................................................................................................................................1000
Örnek:Lookup ile kayıt ara .....................................................................................................................1000
Goto ve Find Metodlarıyla Arama ...............................................................................................................1000
SetKey() ..............................................................................................................................................1000
EditKey()..............................................................................................................................................1001
GotoKey() ............................................................................................................................................1001
GotoNearest() ......................................................................................................................................1001
Örnek:Benzer kayıtları ara .....................................................................................................................1001
FindKey (aranan) ..................................................................................................................................1001
FindNearest (aranan) ............................................................................................................................1002
Örnek:Bir harf ile başlayan kayıtları ara ...................................................................................................1002
Örnek:Kayıt ara ....................................................................................................................................1002
Dataset içerisinde veri parçası alma ...........................................................................................................1004
Range metodlarıyla veri aralığını ayarlama .................................................................................................1004
Örnek:Bir bölgede kayıt ara ...................................................................................................................1005
Filter Metodu ile veri aralığını ayarlama ......................................................................................................1006
Örnek:Sözlük programı .........................................................................................................................1007
Örnek:Veri filtrele ..................................................................................................................................1009
FilterOptions ........................................................................................................................................1010
Örnek:Şarta bağlı olarak listele .............................................................................................................1010
Örnek:OnFilterRecord ile Filtreleme ........................................................................................................1010
Filtrelenmiş kayıtlar arasında gezinme ........................................................................................................1012
FindFirst ..............................................................................................................................................1012
FindLast ..............................................................................................................................................1012
FindNext ..............................................................................................................................................1012
FindPrior ..............................................................................................................................................1012
Bölüm özeti ................................................................................................................................ 1012
26.Bölüm
ADO bileşenleri ile çalışma .................................................................................................. 1013
Ado İçin Neler Gerekli ...............................................................................................................................1014
27.Bölüm
Veri Sorgulama ................................................................................................................. 1041
TQuery Kullanımı ........................................................................................................................ 1041
İlk Sorgu ..................................................................................................................................................1042
RequestLive ile bilgileri değiştirin ...............................................................................................................1043
UpdateSQL ..........................................................................................................................................1044
SQL(Structured Query Language) ..............................................................................................................1044
Sorgulanacak Tabloyu Belirleme ................................................................................................................1045
Kullanılacak Alanları Belirleme...................................................................................................................1045
Örnek:Tüm alanları sorgula ...................................................................................................................1045
Örnek:İstenilen alanları sorgula ..............................................................................................................1046
Örnek:Tekrarlı kayıtları bir kere listeleme ................................................................................................1046
Sıralama .................................................................................................................................................1047
Örnek:Verileri A-Z olarak sırala ..............................................................................................................1047
Örnek:Verileri Z-A olarak sırala ..............................................................................................................1048
Örnek:Birden fazla alan üzerinde sıralama ..............................................................................................1048
45 İçindekiler
28.Bölüm
QReport Bileşenleri ile Rapor Hazırlama .................................................................................. 1083
Qreport kurulumu ....................................................................................................................... 1083
ilk Rapor ..................................................................................................................................................1083
Raporla ilgili ayarlar ..................................................................................................................................1086
Çalışma zamanında rapor önizleme ...........................................................................................................1087
Sihirbaz kullanılarak Rapor hazırlama ......................................................................................... 1088
Raporu veritabanı dosyalarına bağlama ...................................................................................... 1090
Veri süzmek ve sıralamak ........................................................................................................... 1091
Rapora metin ve veri alanları ekleme .......................................................................................... 1092
Izgara, büyütme oranı ve Units özelliği .......................................................................................................1092
Ana/Alt (Master/ Detail) raporlar oluşturmak .............................................................................. 1093
Örnek: Rapor oluşturma ........................................................................................................................1093
Alt rapor ...............................................................................................................................................1096
Bölüm Özeti ................................................................................................................................ 1100
29.Bölüm
Rave Bileşenleri ile Rapor Oluşturma ..................................................................................... 1101
Rave ile ilk rapor......................................................................................................................... 1101
Rave Visual Designer’a genel bakış ............................................................................................ 1109
Rave Bileşenleri.......................................................................................................................... 1109
Rave Project bileşeni ................................................................................................................................1110
Engine bileşenleri .....................................................................................................................................1110
Render bileşenleri ....................................................................................................................................1110
Data Connection bileşenleri .......................................................................................................................1110
Rave Visual Designer ile rapor tasarımı ...................................................................................... 1111
Rave Visual Designeri başlatın ...............................................................................................................1111
Veritabanı bağlantısı oluşturun ..............................................................................................................1111
Driver Data View bağlantısı oluşturun ....................................................................................................1112
Rapor Sihirbazını başlatın .....................................................................................................................1113
Sayısal alanların toplamını alma ................................................................................................................1114
Çalışma zamanında rapor oluşturma .......................................................................................... 1116
Bölüm Özeti ................................................................................................................................ 1119
47 İçindekiler
5.Kısım-30.Bölüm
Web Server Uygulamaları Yazma ........................................................................................... 1122
CGI Uygulamaları Yazma ............................................................................................................ 1123
Örnek:Console uygulaması ....................................................................................................................1123
Örnek:Web sayacı ................................................................................................................................1125
Web Module................................................................................................................................ 1126
Web Actionları ............................................................................................................................ 1128
Özellikler .................................................................................................................................................1128
PathInfo ...............................................................................................................................................1129
Default.................................................................................................................................................1129
Olaylar ....................................................................................................................................................1129
Response.Content ................................................................................................................................1130
Örnek:Web modül aksiyonları ................................................................................................................1130
Request.ScriptName .............................................................................................................................1131
Formdan Gelen Verileri Alma.....................................................................................................................1132
Request.QueryFields ............................................................................................................................1132
Örnek:Web formu .................................................................................................................................1133
Veri tabanından bilgi gönderme .................................................................................................................1135
Örnek:Veritabanından notları oku ...........................................................................................................1135
Response.ContentType .........................................................................................................................1137
Response.ContentStream .....................................................................................................................1138
Örnek:Kurları resim olarak gönder ..........................................................................................................1138
Veritabanına bilgi girme ............................................................................................................................1141
Başka Sitelerden Gelen İstekleri Reddetme ................................................................................................1144
Request.Referer ...................................................................................................................................1144
Post Metoduyla Gelen Verileri Alma ...........................................................................................................1145
Request.ContentFields ..........................................................................................................................1145
Request.Method ...................................................................................................................................1147
Kullanıcı Bilgilerini Alma ............................................................................................................................1147
Request.RemoteAddr, Request.RemoteHost ...........................................................................................1147
Request.UserAgent...............................................................................................................................1148
Cookie Kullanma ........................................................................................................................ 1148
SetCookieField(Values: TStrings; const ADomain, APath: string; AExpires: TDateTime; ASecure: Boolean) ..1149
Örnek:Cookie kullanımı .........................................................................................................................1149
Web sayfalarını PageProducer ile Oluşturma .............................................................................. 1151
Web Server Uygulamalarını DLL Olarak Yazma ........................................................................... 1153
Örnek:DLL ...........................................................................................................................................1154
Bölüm Özeti ................................................................................................................................ 1155
31.Bölüm
Indy Server –Indy Clients Kontrolleri ...................................................................................... 1157
TCP Server-TCP Client................................................................................................................ 1158
Delphi 7…Zeydin PALA 48
TIdTCPServer .................................................................................................................................1158
Özellikler .................................................................................................................................................1158
DefautlPort ...........................................................................................................................................1158
Active ..................................................................................................................................................1159
Olaylar ....................................................................................................................................................1159
Örnek:TIdTCPserver ile port dinle ..........................................................................................................1159
TIdTCPClient ...................................................................................................................................1161
Özellikler .................................................................................................................................................1161
Host ....................................................................................................................................................1161
Port .....................................................................................................................................................1161
Metotlar ...................................................................................................................................................1162
Connect ...............................................................................................................................................1162
Disconnect ...........................................................................................................................................1162
WriteLn ................................................................................................................................................1162
ReadLn................................................................................................................................................1162
Örnek:Sunucu-İstemci programı .............................................................................................................1162
Sunucu Programı ..................................................................................................................................1162
İstemci programı ...................................................................................................................................1171
UDP Server-UDP Client ............................................................................................................... 1175
TIdUDPServer ................................................................................................................................1175
Özellikler .................................................................................................................................................1175
Host ....................................................................................................................................................1175
DefaultPort ...........................................................................................................................................1175
Active ..................................................................................................................................................1176
BroadcastEnable ..................................................................................................................................1176
Metotlar ...................................................................................................................................................1176
Send(Host,Port,Mesaj) ..........................................................................................................................1176
Olaylar ....................................................................................................................................................1176
TIdUDPClient ..................................................................................................................................1176
Özellikler .................................................................................................................................................1177
Host ....................................................................................................................................................1177
Port .....................................................................................................................................................1177
BroadcastEnable ..................................................................................................................................1177
Metotlar ...................................................................................................................................................1177
Send(Mesaj) ........................................................................................................................................1177
ReceiveString .......................................................................................................................................1178
Time Server-Time Client ............................................................................................................. 1178
TIdTimeServer .................................................................................................................................1178
Özellikler .................................................................................................................................................1178
DefaultPort ...........................................................................................................................................1178
Active ..................................................................................................................................................1178
BaseDate .............................................................................................................................................1178
Olaylar ....................................................................................................................................................1179
Örnek:Time Server ...............................................................................................................................1179
49 İçindekiler
TIdTime ..........................................................................................................................................1181
Özellikler .................................................................................................................................................1181
Host ....................................................................................................................................................1181
DateTime .............................................................................................................................................1181
BaseDate .............................................................................................................................................1182
Örnek:Dünya Saatleri ............................................................................................................................1182
Örnek:Saat ayarla .................................................................................................................................1183
DayTime Server-DayTime Client ................................................................................................. 1183
TIdDayTimeServer ...........................................................................................................................1183
Özellikler .................................................................................................................................................1183
DefaultPort ...........................................................................................................................................1183
TimeZone ............................................................................................................................................1183
Active ..................................................................................................................................................1184
TIdDayTime .....................................................................................................................................1184
Özellikler .................................................................................................................................................1184
Host ....................................................................................................................................................1184
DayTimeStr ..........................................................................................................................................1184
Örnek:Server tarihi................................................................................................................................1184
Finger Server-Finger Client ......................................................................................................... 1185
TIdFingerServer ..............................................................................................................................1185
Özellikler .................................................................................................................................................1185
Port .....................................................................................................................................................1185
Olaylar ....................................................................................................................................................1185
TIdFinger ........................................................................................................................................1185
Özellikler .................................................................................................................................................1186
Host ....................................................................................................................................................1186
Query ..................................................................................................................................................1186
CompleteQuery ....................................................................................................................................1186
Finger ..................................................................................................................................................1186
VerboseOutput .....................................................................................................................................1186
Örnek:Finger Server .............................................................................................................................1186
Örnek:Finger Client ...............................................................................................................................1192
Telnet Server-Telnet Client ......................................................................................................... 1193
TIdTelnetServer ...............................................................................................................................1193
Özellikler .................................................................................................................................................1193
DefaultPort ...........................................................................................................................................1193
Active ..................................................................................................................................................1193
LoginMessage ......................................................................................................................................1193
LoginAttempts ......................................................................................................................................1194
Olaylar ....................................................................................................................................................1194
TIdTelnet ........................................................................................................................................1194
Özellikler .................................................................................................................................................1194
Host ....................................................................................................................................................1194
Delphi 7…Zeydin PALA 50
Port .....................................................................................................................................................1194
Metotlar ...................................................................................................................................................1194
SendCh(Karakter) .................................................................................................................................1194
Olaylar ....................................................................................................................................................1195
Örnek:Telnet Sunucusu .........................................................................................................................1195
Örnek:Telnet İstemcisi...........................................................................................................................1198
Echo Server-Echo Client ............................................................................................................. 1200
TIdEchoServer .................................................................................................................................1200
TIdEcho .........................................................................................................................................1201
Özellikler .................................................................................................................................................1201
Host ....................................................................................................................................................1201
Port .....................................................................................................................................................1201
EchoTime ............................................................................................................................................1201
Metotlar ...................................................................................................................................................1201
Echo(String) .........................................................................................................................................1201
Örnek:Echo Server programı .................................................................................................................1201
Örnek:Echo Client ................................................................................................................................1202
TrivialFTP Server-TrivialFTP Client ............................................................................................. 1204
TIdTrivialFTPServer ........................................................................................................................1204
Olaylar ....................................................................................................................................................1204
TIdTrivialFTP .................................................................................................................................1204
Özellikler .................................................................................................................................................1204
Host ....................................................................................................................................................1205
Port .....................................................................................................................................................1205
Active ..................................................................................................................................................1205
Metotlar ...................................................................................................................................................1205
Get(const ServerFile: String; const LocalFile: String) ................................................................................1205
Örnek:Trivial FTP Client-Server..............................................................................................................1205
FTP Server ..........................................................................................................................................1205
FTP Client............................................................................................................................................1206
Diğer Indy Clients kontrolleri ...................................................................................................... 1208
TIdIcmpClient ..................................................................................................................................1208
Özellikler .................................................................................................................................................1208
Host ....................................................................................................................................................1209
TTL .....................................................................................................................................................1209
Metotlar ...............................................................................................................................................1209
Ping ....................................................................................................................................................1209
Olaylar ....................................................................................................................................................1209
Örnek: Ping ..........................................................................................................................................1209
Örnek: Trace Route ..............................................................................................................................1211
TIdNNTP ........................................................................................................................................1213
Özellikler .................................................................................................................................................1213
Host ....................................................................................................................................................1213
UserName, Password ...........................................................................................................................1213
51 İçindekiler
TIdWhois ........................................................................................................................................1215
Özellikler .................................................................................................................................................1215
Host ....................................................................................................................................................1215
Metotlat ...................................................................................................................................................1215
Whois ..................................................................................................................................................1215
Örnek:Whois ........................................................................................................................................1215
Örnek: IP-Domaın adres dönüşümü........................................................................................................1216
Örnek: Ağdaki açık bilgisayar listesi ........................................................................................................1217
TIdHttp ............................................................................................................................................1218
Metotlar ...................................................................................................................................................1218
Get(AURL: string): String .......................................................................................................................1218
Örnek:Sayfadan kur al...........................................................................................................................1219
Get(AURL: string; const AResponseContent: TStream) ............................................................................1221
Indy Misc Kontrolleri .................................................................................................................. 1221
TIdNetworkCalculator .......................................................................................................................1221
Özellikler .................................................................................................................................................1222
NetworkAddress ...................................................................................................................................1222
NetworkMask .......................................................................................................................................1222
ListIp ...................................................................................................................................................1222
Metotlar ...................................................................................................................................................1222
StartIp .................................................................................................................................................1222
EndIp ..................................................................................................................................................1222
NumIp .................................................................................................................................................1222
Örnek:IP test ........................................................................................................................................1223
TIdIPWatch ......................................................................................................................................1224
Özellikler .................................................................................................................................................1224
IsOnline ...............................................................................................................................................1224
CurrentIP .............................................................................................................................................1224
WatchInterval .......................................................................................................................................1224
HistoryEnabled, HistoryFileName, MaxHistoryEntries ...............................................................................1225
IPHistoryList .........................................................................................................................................1225
Metotlar ...................................................................................................................................................1225
LoadHistory..........................................................................................................................................1225
SaveHistory .........................................................................................................................................1225
ForceCheck .........................................................................................................................................1225
Olaylar ....................................................................................................................................................1225
İnternet Bağlantısını Kontrol Etme ..........................................................................................................1226
Örnek:İnternet bağlantısı .......................................................................................................................1226
Örnek:Hangi bilgisayar internete bağlı ....................................................................................................1227
TIdLogDebug ..................................................................................................................................1233
Delphi 7…Zeydin PALA 52
Özellikler .................................................................................................................................................1233
Target .................................................................................................................................................1233
Filename..............................................................................................................................................1233
Active ..................................................................................................................................................1233
LogTime ..............................................................................................................................................1233
Olaylar ....................................................................................................................................................1233
LogItem(ASender: TComponent; var AText: String) .................................................................................1234
TIdDateTimeStamp...........................................................................................................................1234
Özellikler .................................................................................................................................................1234
TimeZone ............................................................................................................................................1234
AsISO8601Calendar .............................................................................................................................1234
AsISO8601Ordinal ................................................................................................................................1234
AsISO8601Week ..................................................................................................................................1234
AsRFC822 ...........................................................................................................................................1234
Örnek:Tarih formatları ...........................................................................................................................1235
TIdAntiFreeze .................................................................................................................................1236
TIdMessage.....................................................................................................................................1236
Özellikler .................................................................................................................................................1236
Body ...................................................................................................................................................1236
Subject ................................................................................................................................................1236
From ...................................................................................................................................................1236
Recipients ............................................................................................................................................1237
Priority .................................................................................................................................................1237
CCList .................................................................................................................................................1237
BCCList ...............................................................................................................................................1237
ReplyTo ...............................................................................................................................................1237
Date ....................................................................................................................................................1237
UseNowForDate ...................................................................................................................................1238
MsgId ..................................................................................................................................................1238
MessageParts ......................................................................................................................................1238
ContentType ........................................................................................................................................1238
Bölüm Özeti ................................................................................................................................ 1238
32.Bölüm
Active Formlar ................................................................................................................. 1241
ActiveForm oluşturma ...............................................................................................................................1241
Web Sayfasına Yerleştirme .......................................................................................................................1243
ActiveForm bileşenini component palete ekleme .........................................................................................1245
Bölüm Özeti ................................................................................................................................ 1247
33.Bölüm
Delphi’de Assembly Kullanımı .............................................................................................. 1249
Değişkenlere Değer Aktarma .....................................................................................................................1249
Değişken Adlarında Özel Durumlar ............................................................................................................1251
53 İçindekiler
34.Bölüm
Delphi projelerini dağıtmak için kurulum programları kullanma .................................................. 1255
İnstallShield Express ile kurulum dosyaları hazırlama ................................................................ 1255
Genel Delphi uygulamalarını dağıtma ......................................................................................... 1257
Uygulama dosyaları ..................................................................................................................................1257
Paket(Package) dosyaları .........................................................................................................................1257
Merge Modüller ........................................................................................................................................1257
Dizin ........................................................................................................................................... 1259
İçindekiler
1
Delphi 7 IDE’ ye bakış
Delphi ile programlama
Veri tipleri, değişkenler ve sabitler
Prosedür ve fonksiyonlar
Karar yapıları ve döngüler
Component Library
Delphi nesne modeli
BaseCLX kütüphanesini kullanma
Hata yakalama teknikleri
Delphi 7…Zeydin PALA 56
1
Delphi 7 IDE’ ye Bakış
Bu bölümde Delphi 7 IDE ortamını tanıyacak ve program arabirimi tasarlarken , program kodu yazarken ihtiyaç
duyacağınız tüm araçları ve teknikleri en özel bir biçimde tanıyacaksınız. Özellikle bu kitabın size sunduğu
sade, akıcı ve açık anlatım tekniği ile adeta konuları yutarcasına ilerleyeceksiniz.
Delphi Nedir?
Delphi görsel ve nesne yönelimli program geliştirme ortamıdır. Delphi ile Windows XP, Windows 2000 ve
Windows 9X ortamlarında çalışan hızlı ve minimum kod ile uygulamalar geliştirebilirsiniz. Delphi aynı zamanda
Linux ortamlarında çalışabilen uygulamaları da Kylix desteği ile sağlayabilmektedir.
Delphi, program geliştirmek için ihtiyaç duyduğunuz her aleti size sunar. Delphi ile programları geliştirebilir,
test edebilir ve uygulamalarınızı dağıtabilirsiniz.
Delphi’ yi başlatın
Delphi programını Başlat-Programlar-Borland-Delphi 7 seçenekleri ile başlatabileceğiniz gibi, Başlat-
Çalıştır kutusuna Delphi32 yazarak ta başlatabilirsiniz.
Code Explorer program uniti içerisindeki sınıfları,değişkenleri, blokları görüntüleyerek hızlı bir biçimde ilgili
kodlara ulaşmayı sağlar.
Object İnspector nesnelerin özelliklerini değiştirmenizi sağlar ve nesnelere istenilen olayları atar.
Object TreeView penceresi nesneleri Parent-Child ilişkisine dayanan hiyerarşik bir biçimde görüntüler.
Menü Çubuğu ve menü seçenekleri
Araç
Component Paleti
MenüÇubukları
Çubuğu ve menü seçene
Araç
Component Paleti
MenüÇubukları
Çubuğu ve menü seçene
Araç
MenüÇubukları
Çubuğu ve menü seçene
Code Editor
Object TreeView
Araç
MenüÇubukl
Çubuğurı ve menü seçene
Code Editor
Object TreeView
Araç
MenüÇubukları
Çubuğu ve menü seçene
Araç
MenüÇubukl
Çubuğurı ve menü seçene
Araç
MenüÇubukları
Çubuğu ve menü seçene
Araç
MenüÇubukl
Çubuğurı ve menü seçene
Araç
MenüÇubukları
Çubuğu ve menü seçene
Araç
MenüÇubukl
Çubuğurı ve menü seç
Araç
MenüÇubukları
Çubuğu ve menü seçene
Araç
MenüÇubukl
Çubuğurı ve menü seçene
Object İnspector
Tasarım
Araç
Formu
Çubukları
Menü Code Explorer
Çubuğu ve menü seçene
Object
Şekil 1.1-Delphi
7 IDEİnspector Araç
Code Explorer
Çubukl rı
yazarak Araç
Delphi ortamında nesneleri form üzerine alarak kullanabileceğiniz gibi nesneleri tanımlayan kodları kod
Object İnspector
penceresine Çubukları
ta onları form üzerine alabilirsiniz.
Delphi IDE olan
Araç
ortamında programlama için gerekli
Object İnspector tüm araçlara hızlı ve kolayca erişebilirsiniz.
Çubukl rı
Object İnspector
Delphi IDE ortamından ayrılmadan kullanıcı arabirimini
tasarlayabilir, sınıflar ve kütüphaneler arasında
dolaşabilir,kod yazabilir, programı derleyebilir, programı test edebilir, programı Debug edebilir ve Projeleri
Object İnspector
yönetebilirsiniz.
Object İnspector
Menüler ve araç çubukları
Delphi ana penceresi ekranın en üst kısmında
Object İnspector yer alır. Bu pencere menü seçeneklerini, araç çubuğu
düğmelerini ve Component Palet bileşenlerini içerir.
Object İnspector
Delphi araç çubuğu düğmeleri hızlı bir biçimde istenen işlemi gerçekleştirmenizi sağlar. Araç çubuklarında
Object
bulamadığınız seçenekleri menü seçenekleri altındayer almakta ve araç çubukları gizlense bile her durumda
İnspector
Object İnspector
Delphi 7…Zeydin PALA 58
Yardım al
Ekle
Tümünü kaydet
Aç
Yeni öğe
Unit göster
Component paleti
Component paleti gruplar halinde görsel ve görsel olmayan bileşenleri sekme sayfaları içerisinde görüntüler.
Bu sekmeleri componentleri fonksiyonel olarak gruplamışlardır. Örneğin Standart, Additional ve Win32
sekme sayfaları Windows bileşenlerini içerirler. Dialogs sekme sayfası standart Windows diyalog
pencerelerini içerir.
Componet sayfaları
Componetler
Form
Kullanıcı arabirimlerini tasarlamak için form kullanılır. Component palette yer alan bir elemanı form üzerine
alarak istediğiniz biçimde onu boyutlandırabilir, hizalayabilir ve diğer görsel özelliklerini değiştirebilirsiniz.
Form üzerine alınan ve görsel olmayan bileşenleri boyutlandıramazsınız. Bu bileşenler çalışma zamanında
görünmezler. Örneğin Timer bileşeni görsel olmayan bir bileşendir.
Form üzerindeki bileşenlerin koordinatlarını ayarlamak için fareyi kullanabileceğiniz gibi hassas ayarlar için
Ctrl tuşunu basılı tutarak yön tuşlarını da kullanabilirsiniz.
Form tasarımını yaptıktan sonra yanlışlıkla form üzerindeki elemanların yerlerinin değişmemesi için Edit
menüsünden Lock Controls seçeneğini kullanabilirsiniz.
Object İnspector
Form üzerine alınan bir bileşenin özellikleri değiştirebilir ve ona ait olay atayabilirsiniz. Form üzerinde seçili
olan elemanın özellikleri dinamik olarak Object inspector penceresinde gösterilecektir.
Object İnspector penceresi bir bileşene ait özellikleri hem alfabetik ve hem de kategorik olarak listeleyebilir.
Pencereyi sağ fare tuşuyla tıklayın ve açılan menüden Arrange-By Category yada Arrange-By Name
seçeneklerinden birini seçin.
Diğer prosedürler
Object TreeView
Object TreeView pencereleri form üzerindeki nesneleri Parent-Child ilişkisine dayanan bir yapıda
göstermektedir. Bu penceredeki bir elemanı seçtiğinizde aynı elemen hem form üzerinde seçilecek hem de
Object İnspector penceresinde elemana ait özellikler gösterilecektir.
Dolayısıyla bu pencere Form ve Object inspector pencereleri ile koordineli olarak çalışmaktadır.
Code Editor
Siz form üzerinde kullanıcı arabirimini tasarlarken Delphi sizin için arka planda bunlara ait kod üretir. Form
üzerine aldığınız ve değiştirdiğiniz her bir özelliğe ait kod hızlı bir biçimde üretilecektir.
65 Delphi 7 IDE’ ye bakış
Program kodlarını direkt bu editor içerisinde yazabilir ve panodaki metinleri buraya yapıştırabilirsiniz. Tıpkı bir
ASCII editör programı gibi çalışır.
Form üzerindeki
elemanlar için
üretilen kodlar
Kod tamamlama
Kod penceresinde her hangi bir bileşen adı yada sınıf adı yazıp . operatörüne bastığınızda özellikler, metotlar
ve olay listeleri bir açılan pencere içinde size sunulacaktır. Eğer nokta operatöründe hemen sonra bir karaktere
basarsanız liste içindeki seçenekler bastığınız göre yeniden süzülecektir. Böylece yazılmak istenen seçenek
kolaylıkla bulunacak ve Enter tuşu ile kod penceresinde yerini alacaktır.
Açılan penceredeki özellik ve prosedürler yaprak renkli fonksiyonlar ise mavi renkli olarak gösterilir.
Açılan pencereyi sağ tıklayıp içeriğini alfabetik olarak yada nesne aralığına bağlı olarak listeleyebilirsiniz.
Kod parametreleri
Kod penceresinde herhangi bir prosedür ve fonksiyon çağrısı yaparken girilmesi gereken parametreler ve
tipleri ile beraber size gösterilir. Örneğin kod penceresinde Form1.Canvas.LineTo( ifadesini yazınca otomatik
olarak ilgili parametreler gösterilecektir.
Tanımlama Tooltipleri
Kod penceresinde fare tanımlanmış her hangi bir ifadenin üzerine geldiğinde ilgili ifadenin amacı
gösterilecektir.
67 Delphi 7 IDE’ ye bakış
Kod Şablonları
Delphi kod penceresinin en önemli özelliklerinden birisi şüphesiz hazır kod şablonlarını kullanıcının hizmetine
sunmasıdır. Dizi tanımları, program yordamları, karar ifadeleri gibi bir çok yapıya ait kod şablonlarına direkt
kod penceresinden ulaşabilirsiniz.
Bunun için kullanılacak olan sihirli kısayol tuşları CTRL+J dir.
Kod penceresinde iken herhangi bir anda ve ihtiyaç duyulduğunda CTRL+J tuşlarına basın:
Açılacak olan kod şablonları listesinden istediğiniz yapıya ait kodu seçebilirsiniz. Örneğin if-then-else yapısına
ait kodu hazır olarak kullanmak için listeden “if then else” ifadesini seçin. Yada kısaca “ifeb” yazın ve Ctrl+J
tuşlarına basın. if-then–else yapısına ait kod bloğu pencereye yazılacaktır.
Delphi 7…Zeydin PALA 68
Enter tuşuna basıldıktan sonra il then else yapısı pencerede yerini alacaktır.
Aktif şablon
Şablon içeriği
Pencerenin Templates listesinden önceden tanımlanmış olan ve direkt Ctrl+J tuşları ile kullanılan kod
şablonları yer almaktadır.
Burada Add düğmesi ile yeni şablon tanımlayabilir, Edit düğmesi ile seçili şablonu düzenleyebilir ve Dilete
düğmesi ile mevcut bir şablonu silebilirsiniz.
Yeni şablon tanımlamak için Add düğmesini kullanın:
x:=MessageDlg('msg',mtConfirmation,mbYesNoCancel,0);
Delphi 7…Zeydin PALA 70
Class Completion
Delphi Editörünün önemli özelliklerinden biri de sınıf tamamlamadır(Code Completion) . Sınıf tamamlama işi
Ctrl+Shft+C tuş takımları ile gerçekleştirilmektedir.
Örneğin Kod penceresinin Type kısmında Kare adında bir prosedürü aşağıdaki gibi tanımladığınızı varsayalım.
public
procedure kare(sayi:integer);
Kod satırını yazdıktan sonra Ctrl+Shft+C tuşlarına basarsanız prosedürün yapısı aşağıdaki gibi otomatik olarak
tanımlanacak ve kod penceresinde yerini alacaktır.
end;
71 Delphi 7 IDE’ ye bakış
Satırın hemen
sonunda Ctrl+Shift+C
tuşlarına basın.
Prosedürün gövde
yapısı yerini alacaktır.
Kod Browse
Fareyi kod penceresinde herhangi bir sınıf, değişken,özellik, metod ve başka bir tanımlama üzerine getirip
Ctrl tuşuna basarsanız fare El şekline dönüşecek ve tıklayacaklarınız ise link halini alacaktır. Sözü geçen
seçeneklerden birini tıkladığınızda ilgili seçeneğin tanımlama bilgisine ulaşacaksınız.
Delphi 7…Zeydin PALA 72
Diagram Sayfası
Kod editörünü alt kısmı birden fazla sayfayı gösterecek bir özelliğe sahiptir. Bu kısımda yer alan Diagram
sayfasında form üzerindeki elemanların ilişkisel yapısı ve data elemanları arasındaki yapı burada
tasarlanabiliyor.
Yeni diyagram oluşturmak için Diagram sayfasını tıklayın. Object TreeView penceresindeki nesneleri taşıyarak
panel üzerine bırakın. Form üzerine bir birleri ile bağlantılı olan elemanlar arasında otomatik olarak çizgiler
çizilecektir. Diğer elemanlar arasındaki çizgileri kendiniz de çizebilirsiniz.
Diyagramlar, özellikle master-detail tablolar arasındaki ilişki biçimlerini göstermek açısından son derece
faydalıdırlar.
Diagram penceresindeki Name kutusunu kullanarak oluşturduğunuz diyagramları kaydedebilir ve önceden
kaydedilmiş olanları açılan kutu ile görüntüleyebilirsiniz.
73 Delphi 7 IDE’ ye bakış
pencerenin Designer kısmında New Forms as text işaretini kaldırırsanız formlar binary formatına
kaydedilecektir.
Code Explorer
Delphi’yi açtığınızda Code Explorer kod penceresinin sol tarafında kilitlenmiş bir biçimde yerini alacaktır.
Code Explorer kod penceresinde yer alan tipleri, sınıfları, özellikleri, metotları,global değişkenleri, rutinleri
hiyrerşik olarak gösterir. Ve diğer unitlerin uses deyimi kullanıldığını da gösterir.
Code Explorer penceresini kullanarak kod editörü içinde hızlı bir biçimde dolaşabilirsiniz. Code Explorer içindeki
bir ifadeyi tıkladığınızda kod penceresinde bu ifadenin geçtiği kısım otomatik olarak aktif hale gelecektir.
Project Manager
Delphi’yi yeni başlattığınızda otomatik olarak yeni bir proje başlatılacaktır. Proje içinde birden fazla dosya
bulunacaktır. Proje içindeki dosyaları görüntüleyebilir ve yönetebilirsiniz. Project Manager içinde formlar,unitler
ve kütüphane dosyaları bulunabilir.
Project Manager penceresini göstermek için View-Project Manager menü seçeneklerini kullanabilirsiniz.
Project Manager penceresine yeni projeler eklemek için New düğmesini projeden bir dosya silmek için de
Remove düğmesini kullanabilirsiniz. Activate düğmesini bir projeyi aktif yapmak için kullanacaksınız. Bir anda
sadece bir proje aktif olacaktır.
Project Browser
Project Browser bir projeyi detaylı olarak inceler. Project Browser sınıfları, unitleri, global
sembolleri(tipler, özellikler, metotlar, değişkenler ve rutinler) ağaç yapısında gösterir. Bu pencereyi View-
Browser menü seçenekleri ile görüntüleyebilirsiniz. Bu pencere Global nesneleri,sınıflar ve unitleri kategorik
olarak görüntüler.
Delphi 7…Zeydin PALA 76
To –Do listeleri
To-do listeleri bir proje için yapılacak işlemleri kaydeder. View-To-do List menü seçeneği ile bir pencereyi aktif
hale getirebilirsiniz. Özellikle büyük projelerde birden fazla kişinin çalıştığı bir kurumda bu tür bir özellik
oldukça fazla üretkenlik sağlayacaktır.
Object Repository
Object Repository; formları, diyalog kutularını,data modüllerini, wizardları, DLL dosyalarını, örnek uygulamaları
ve diğer öğeleri içerir. Yeni bir projeye başlandığında File-New-Others seçenekleri New Items penceresi
aktif hale getirilir. Bu pencere Object Repository penceresinin aynısıdır.
Project-Options menüleri ile açılarak yapılan projeye ait ayarlar, projeyle aynı isimli fakat DOF uzantılı
dosyalara kaydedilir.
Yazdığınız bir projeyi derlediğinizde projenizde bulunan PAS ve DPR uzantılı dosyalar derlenir ve onlara ait
DCU uzantılı dosyalar oluşturulur. Daha sonra bu dosyalar formlar ve Resource dosyaları ile link edilerek EXE
dosyalar oluşturulur.
Bir projeyi kaydederken sizden sadece unit ismi(pas) ve proje ismi(dpr) sorulur. Diğer dosyalar ise otomatik
olarak ayni isimlerden türetilerek oluşturulur.
Bölüm Özeti
Bu bölümde Delphi IDE ile tanıştınız. Delphi 'nin ne olduğu ve program geliştirmek için hangi araçlara ihtiyaç
duyacağınızı ve ilgili araçları nerede ve nasıl bulacağınızı artık biliyorsunuz.
Delphi kod editörünün size sunduğu güçlü özellikleri bizzat uygulayabileceksiniz. Component palet içindeki
grupları istediğiniz gibi özelleştirebiliyorsunuz artık. Delphi projeleri ile çalışırken gerek proje tarafından
otomatik olarak gerekse sizin tarafınızdan diske kaydedilen dosya türlerinin neler olduğunu artık biliyorsunuz.
Şimdi bir sonraki adıma hazır olun. Çünkü artık programlamaya başlayacaksınız. Göreceksiniz her şey hem çok
kolay, hem çok zevkli ve o kadar da heyecanlı olacaktır.