3 Mart 2008 Pazartesi

Visual Basic 6 Ders Notlarım.

Arkadaşlar merhaba, yaklaşık üç senedir üzerinde çalıştığım bir program olan Visual Basic 6 en basit yazılım dili. Bu zamana kadar ufak tefek bir elin parmağını geçmeyecek programlar yaptım.
Firmamıza yapmış olduğum basit bir programı da sizlerle paylaşmak istedim. Ayrıca ilerleyen zamanlarda da kitaplardan öğrenmiş olduğum bilgileri de burada paylaşacağım.
Ön izleme

Buradan da Programı indirebilirsiniz :
http://rapidshare.com/files/96699985/F__305_rat.zip.html
1) CurrentX, CurrentY (İşlediğim bu konuların anlatımlarını İhsan Karagülle ve Zeydin Pala'nın hazırlamış olduğu, Visual Basic 6.0 Pro - Türkmen Kitabevi. (bilgi www.turkmenkitabevi.com)Kitabından alıntılar kullanarak hazırladım.)
(Sf.: 130) ... "Form üzerinde yapılan başlangıç noktası olmayan çizim ve yazımlar aktif pixelin bulunduğu bölgeden başlar. Bu aktif pixelin x ve y koordinatlarını CurrentX ve CurrentY özellikleriyle belirlenir. Özellikle form üzerine Print metodu ile Yazacağınız yazılarda bu özellikler yazının koordinatlarını belirler. Örnek ; CurrentX"

Yapmış olduğum uygulamanın resimleri ektedir. Burada öğrenmiş olduğum, nesneyi belli koordinatlarda yönlendirebiliyor olmamız.
2) Unload (Cancel As Integer) Olayı :
Program sonlandırma aşamasına geldiği zaman, siz bu olaya bir kod yazdıysanız onu işleyecek ve sonuca ulaştıracaktır. Mesela, kapatmadan önce verilerinizin kaydedilip kaydelimeyeceğini soran bir uyarı penceresini bu olayda ayarlayabilirsiniz.
Elimde bulunan kitap olayı şöyle açıklamaktadır : " Form herhangi bir şekilde kapatılırken bu olay meydana gelir. Bu olaya yazacağınız kodla program kapatılmadan önce yapılması gereken işleri yapabilirsiniz. Ayrıca Cancel = True yazarak ta formun kapatılmasını önleyebilirsiniz. Formun Unload olayı şu hallerde meydana gelir.

* Formun sol üst köşesindeki kontrol kutusunda "kapat" seçildiğinde,

* Programda Unload komutu kullanıldığında,

* Windows Görev Yöneticisinden (Task Manager) "Göreve Son Ver" düğmesinin seçilmesiyle,

* Windows'tan çıkılmaya çalışıldığında,

* Form bir MDIChild ile MDI formun kapatılmasıyla.

Bu olaylar herhangi birinin yapılmasıyla Windows formun Unload olayını çağırır. Bu olay içerisinde Cancel = True yapmazsanız formunuz kapanır.

Programın herhangi bir yerinden End komutu ile sonlandırılması durumunda Unload olayı gerçekleşmez. Bu yüzden UnLoad olayına kod yazdığınız programlarda End kodu ile programı sona erdirmemelisiniz. Bunun yerine Unload Me komutunu kullanabilirsiniz.

ÖRNEK: Çıkarken kaydedeyim mi diye sormasını istiyorsak bu kod için en uygun yer Unload olayıdır.

2) QueryUnload(Cancel As Integer, UnloadMode As Integer
Unload
olayıyla aynı işi yapar ancak formun kimin tarafından kapatılmaya çalışıldığını öğrenebilirsiniz. Ayrıca bu olay Unload olayından önce meydana gelir ve burada Cancel = True ile kapatma olayı iptal edilirse UnLoad olayı meydana gelmez. UnLoad olayında bir formun 5 değişik şekilde kapanacağını belirmiştik. QueryUnload olayındaki UnloadMode parametresiyle formun hangi şekilde kapatılmaya çalışıldığını öğrenebilirsiniz. Bu parametrenin alacağı değerler şöyledir.

0 = vbFormControlMenu = Kontrol kutusunda "kapat" seçildi.

1 = vbFormCode = Programda Unload komutu kullanıldı.

2 = vbAppWindows = Windows'tan çıkılmaya çalışıldı

3 = vbAppTaskManager = Task Managerden "Göreve Son Ver" seçildi.

4 = vbFormMDIForm = Form bir MDIChild ise MDI form kapatıldı.
ÖRNEK: Örnek olarak doğru şifre girilmediği sürece Windows'tan çıkışı önleyecek bir program yapalım.

Windows'u kapatmak istediğinizde, Windows açık olan bütün uygulamalara kendini kapatmalarını bildirir. Yani programların QueryUnload ve UnLoad olayları aktif hale gelir. O halde biz Windows'tan çıkılacağını anlayabilmek için yazacağımız programın QueryUnload olayına gerekli kodu yazmamız gerekir. Windows kapatılmak istendiğinde programımız o anda bellekte ise QueryUnload olayı aktif hale gelecek ve doğru şifre girilmezse Windows kapatılmayacaktır. Programı sürekli bellekte tutmak içinde "Başlangıçta" grubuna koymamız gerekir. Ayrıca programın ekranda görülmemesi içinde formu gizlemeliyiz."


Max kullanıcıları bilir. Evde laptop da çalışırken, yanlışlıkla kapat butonuna bastığım zaman max sistemin kapanmasına izin vermiyor. Bu olayı öğrendikten sonra sebebini şimdi daha iyi anlıyorum.

Hiç yorum yok: