2. Delphi’de kullanıcıyı uyarmak, ikaz etmek
veya yönlendirmek için birden fazla method
tanımlanmıştır. Bu methodlardan hangisini
kullanacağınız tamamen size kalmıştır.
3. Basit anlamda kullanıcıyı bilgilendirme amaçlı
kullanılabilen bir methoddur. Method içerisinde sadece tek
parametre kullanılabilmektedir.
4. Bu fonksiyon sayesinde, içerisinde bilgi girişi için text
kutusunun bulunduğu bir pencere açtırmak mümkündür. Bu
pencere sayesinde text kutusuna kullanıcı tarafından
girilecek olan içerik, programın içerisinde diğer işlemler için
kullanılabilir. Bir anlamda; kullanıcının programa parametre
göndermek için kullanabileceği bir pencerenin açılmasını
sağlar da diyebiliriz.
3 tane temel değeri vardır;
Inputbox(‘Pencere Başlığı’, ‘Soru Başlığı’, ‘3. Değer’)
11. Kullanıcıya seçme şansı veren pencereler açmak için
kullanılan bir methoddur. Pencere açıldığı zaman üzerinde
birden fazla buton yerleştirilebileceği için, basılan düğmenin
numarasının aktarılacağı tamsayı tipli bir değişkene ihtiyaç
duyar.
12. Kullanılan ilk parametrede (Delphiyi Sevdiniz mi)
pencerede çıkacak olan mesaj belirlenmektedir. Burada
uyarınızı ‘’ içerisinde belirtebileceğiniz gibi AnsiString tipte bir
değişken değeri de kullanabilirsiniz (Eğer tamsayı veya başka
tipteki matematiksel bir değişkeni yazdıracaksanız, tip
dönüşümü uygulamalısınız).
13. Gelelim ikinci parametreye (mtCustom), buraya
aktaracağınız değerle pencerenizde çıkmasını istediğiniz
iconu belirleyebilirsiniz. Parametre olarak kullanabileceğiniz
standart icon sayısı “4” taneden oluşmaktadır. Aynı anda iki
icon değeri kullanamayacağınızı belirterek, aşağıdaki
tabloda tüm seçenekler ve anlamları sizlere sunulmuştur
(Pencerelerinizde kullanacağınız iconları programınızın
akışına uygun olacak şekilde belirlemelisiniz. Asla rastgele
icon değeri kullanmayınız).
19. Dönen değerin olumsuzunu belirtmek için kullanılan Mantıksal
operatördür (Eğer true dönerse false. False dönerse true).
Genellikle dallanma, karşılaştırma işlemlerinde kullanılır.
Eğer yukarıdaki if satırında “not” komutu kullanılmazsa, formun
başlığında hiç bir zaman metninizi yazdıramazsınız. Burada şunu da
hatırlatalım, Boolean tip bir değişken tanımlandığı anda varsayılan değeri
false dır.
20. Aynı anda iki sonucu beraber değerlendirebilmek amaçlı
kullanılan bir operatördür. Genellikle karşılaştırma gerektiren
(if - Case vs.) durumlar için aynı anda birden fazla şartı
sağlama amaçlı kullanılmaktadır.
21. Belirtilen sonuçlardan herhangi bir tanesinin
doğruluğunun yeterli olduğu durumlarda kullanılan bir
operatördür. Genellikle karşılaştırma gerektiren (if – case)
durumlar için şartlardan herhangi bir tanesinin
sağlanmasının yeterli olduğu durumlar için kullanılır.
23. Programlarınızda oluşabilecek olan farklı dallanmaları
çözüme kavuşturabilmeniz için kullanabileceğiniz en güvenli
yollardan biri de bu yapıdır. Bütün dillerde olduğu gibi Delphi
komutları içerisinde de if yapısı gerçekten yeri doldurulamaz
bir öneme sahiptir. Kullanımında herhangi bir zorluk
sözkonusu değildir.
24. Bu yapıya ait örneklendirme şu şekildedir.
Eğer eğitim kurumunuzun adı istenilen ile eşleşiyorsa,
Ekrana mesaj penceresi olarak ‘Doğru eğitim
kurumundasınız’ mesajı getiriliriyor.
25. Şartın doğru olması durumunda işletilecek olan satır
sayısı birden fazla ise bu durumda aşağıdaki yapıyı
kullanmalısınız.
26. Şart doğru olduğu zaman işleyecek olan kod satırları
birden fazla olduğu için, bu satırlar begin-end bloğu
içerisinde yazılmalıdır. Hatırlatalım tek satırlı kodlarıda
begin-end bloğu içerisinde yazabilirsiniz.
27. if – elseYapısı:
Bu yapı alternatiflerin birden fazla olması durumunda
kullanılması gereken bir kod bloğudur. Aşağıda bu husus
örneklendirilmiştir.
28. Burada şartın doğru olması durumunda işletilecek olan
kod tek satırdan oluşuyorsa “begin – end” bloğu kullanmaya
gerek yoktur. Fakat bu durumda if ile else arasına yazılmış
olan satırın sonuna “;” konulmaz. Buradaki satırın sonunda
“;” konulursa muhakkak “begin-end” bloğu içerisine
alınmalıdır.
29. Bir çok durumda dallanma işlemlerinizi “if” ile
gerçekleştireceksiniz. Fakat kodunuzun daha kolay
anlaşılabilirliği (veya yazılması) açısından bazı durumlarda
“case” yapısını kullanmanız uygun olacaktır. Şunu hiç bir
zaman unutmayın “case” yapısı ile gerçekleştireceğiniz tüm
kodları if yapısıyla yazabilirsiniz, ama tersi mümkün değildir.
Yani if yapısıyla oluşturacağınız kodları “case” ile
yazamayabilirsiniz.
30.
31. “Case” yapısının davranışı şöyledir. Alternatifli değişkenin
değerleri teker teker irdelenerek gerekli kodların işletilmesi
sağlanır.
“Case” yapısıyla aralık kontrolü de yaptırabilirsiniz.
Aşağıdaki örnekte bu husus incelenmiştir.
33. Döngüler yazılım dilleri içerisinde çok önemli yer tutan
komutlardır. Arka arkaya bir çok kez işletilmesi gereken
kodların bulunduğu durumlarda, veya belirlediğiniz şartın
gerçekleşmesine kadar, döngüler baş vurulması gereken tek
seçenektir. Bilhassa dizilerle beraber kullanılabildikleri
zaman güçleri korkunç derecede artabilmektedir.
3 farklı çeşit döngü parametreleri bulunmaktadır;
For
Repeat – Until
While – Do
34. İlk olarak döngü sayaç sayının belli olduğu “for”
döngüsünü inceleyeceğim. Bu döngü sayesinde, döngü
bloğu içerisine yazacağınız kodları arka arkaya istediğiniz
kadar işletebilirsiniz. Döngünün bilinen bir diğer özelliği de
blok içerisindeki kodların en az bir kere işletileceğidir
(Aslında tam olarak öyle değildir. Mesela başlangıç değerini
bitiş değerinden büyük verirseniz, döngü içerisindeki kodlar
hiç işlemeden döngü sona erecektir. Fakat diğer döngülerin
bu tip durumlarda kullanılması daha uygun olacaktır).
35. Bu örnekte 200.000 defalık işleyecek olan bir sayaç
döngüsü görüyorsunuz.
“for” döngüsünde kullanılan sayaç değişkenini (bu örnekte
“i”) muhakkak tam sayı tiplerinden bir tanesiyle
tanımlamalısınız.Aksi takdirde Delphi size hata mesajı iletecek,
programınızı çalıştırmayacaktır.Aynı örneği aşağıdaki şekilde
de çözebilirdiniz.
36. Bazı durumlarda döngünüzün kaç kere işleyeceğini
tahmin edemeyebilirsiniz.Yani döngünüz bir şarta (veya
birden çok) bağlı olarak işleyecektir. Dolayısıyla bu işlemi
“for” döngüsüyle çözemeyeceksiniz. Döngünüzün çalışma
sayısı bir şarta bağlı olacaksa çözüm yollarından bir tanesi
“Repeat-Until” döngüsüdür. Belirteceğiniz şart sağlanmadığı
sürece döngünüz işlemeye devam edecektir.
37. Girilen iki sayı arasındaki sayıların toplamını hesaplayan proje ;
38. Bu döngü belirtilen şart gerçekleştiği sürece devamlı
olarak işler. Repeat – Until döngüsünden farkı, şartın döngü
çıkışında değil, girişinde kontrol edilmesidir. Belirtilen şart
sağlanmıyorsa bu bloğa yazacağınız kod hiç işlemeyebilir.
Aşağıdaki döngü için kullanacağınız yapı verilmiştir.
39. Belirtilen şart sağlandığı sürece döngü komutları
işlemeye devam edecektir.Yine bloktaki kodlar bir satırdan
fazla ise begin-end bloğu kullanmak zorunlu olacaktır. Bir
sonra ki örnekte göreceğimiz, girilen iki sayı arasındaki çift
sayıların toplamı bu döngü kullanılarak çözülmüştür.