Upload
caner-bovatekin
View
81
Download
8
Embed Size (px)
Citation preview
Delphi XE5Diyalog Pencereleri
ShowMessageİnputBoxMessageDlg
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.
ShowMessage
Basit anlamda kullanıcıyı bilgilendirme amaçlı kullanılabilen bir methoddur. Method içerisinde sadece tek parametre kullanılabilmektedir.
InputBox
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’)
InputBox
Pencere Başlığı
Inputbox(‘Pencere Başlığı’, ‘Soru Başlığı’, ‘3. Değer’)
Açılacak olan diyalog penceresinin başlığında yazılacak olan metni bu bölümden tanımlarız.
InputBox
InputBox
Soru Başlığı
Inputbox(‘Pencere Başlığı’, ‘Soru Başlığı’, ‘3. Değer’)
Açılacak olan diyalog penceresinde karşımıza çıkacak olan Soru ya da Bilgi metnini bu bölümden tanımlarız.
InputBox
InputBox
Varsayılan Değer
Inputbox(‘Pencere Başlığı’, ‘Soru Başlığı’, ‘3. Değer’)
Açılacak olan diyalog penceresinde karşımıza çıkacak olan Soru ya da Bilgi metnini bu bölümden tanımlarız.
InputBox
MessageDlg
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.
MessageDlgKullanı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).
MessageDlg
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).
MessageDlg
Kullanabileceğiniz parametre değerleri ve anlamları aşağıda verilmiştir.
MessageDlg
Şimdi de pencerede çıkmasını istediğiniz buttonları belirleyebileceğiniz üçüncü parametremize geçelim ([mbYes,mbNo]).
MessageDlg
Tabloda yaratabileceğiniz tüm düğmeler ve bu düğmelere ait değerler verilmiştir. İçlerinden hangilerini isterseniz ekleyebilirsiniz.
Delphi XE5Mantıksal Operatörler
NotAndOr
Mantıksal Operatörler
Mantıksal işlemlerinizde
kullanabileceğiniz bir çok operatörü Delphi size sunmaktadır. İleriki sayfamızda bu operatörlerden bahsedilmektedir.
NOT
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.
AND
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.
OR
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.
Delphi XE5Şart Deyimleriif - Case
IF Yapısının Delphi’de Kullanım Şekilleri
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.
IF Yapısının Delphi’de Kullanım Şekilleri
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.
IF Yapısının Delphi’de Kullanım Şekilleri
Ş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.
IF Yapısının Delphi’de Kullanım Şekilleri
Ş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.
IF Yapısının Delphi’de Kullanım Şekilleri
if – else Yapısı: Bu yapı alternatiflerin birden fazla olması
durumunda kullanılması gereken bir kod bloğudur. Aşağıda bu husus örneklendirilmiştir.
IF Yapısının Delphi’de Kullanım Şekilleri
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.
Case Yapısının Delphi’de Kullanım Şekilleri
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.
Case Yapısının Delphi’de Kullanım Şekilleri
Case Yapısının Delphi’de Kullanım Şekilleri
“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.
Delphi XE5Döngüler
ForRepeat-UntilWhile-Do
Döngüler
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
For Döngüsü
İ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).
For Döngüsü
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.
Repeat – Until Döngüsü
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.
Repeat – Until Döngüsü
Girilen iki sayı arasındaki sayıların toplamını hesaplayan proje ;
While – Do Döngüsü
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.
While – Do Döngüsü
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.
While – Do Döngüsü
Anlatım: Caner Bovatekin