...::::Tek Link Full Download::::...



İnternet Sayfamıza Hoşgeldiniz...

Sitemize üye olarak bir çok linki elde edebilirsin!!!

Anasayfa bölümünde bir çok konu bulunmaktadır....




...::::Tek Link Full Download::::...

İStediğiniz Türden Dosya....
 
AnasayfaSite AnalizTakvimSSSAramaÜye ListesiKullanıcı GruplarıKayıt OlGiriş yap
Sitemize Moderatör Aranmaktadır...
Başvuru yapacaklar admine ulaşabilirler...


Paylaş | 
 

 Visual Basic öğrenin

Önceki başlık Sonraki başlık Aşağa gitmek 
YazarMesaj
Admin
Admin
avatar

Mesaj Sayısı : 63
Tecrübe Puanı : 173
Kayıt tarihi : 12/07/10

MesajKonu: Visual Basic öğrenin   Salı Tem. 13, 2010 3:29 pm

Visual basic öğrenin


Ders sonunda yapabilecekleriniz:

-Programlama Temel Bilgilerini almak
-Visual Basic 6.0 Çalışma Ortamı'nı tanımak.
-Araç kutusu, pencereler, menüler gibi ortam bileşenlerini tanımak.

I. PROGRAMLAMA NEDİR?
Program nedir? Ya da "yazılım nedir?" gibi sorulara, "bilgisayarın donanım kısmına yaşam veren komutlardır" gibi yanıtlar verilir. Burada vurgulanan; eğer bilgisayarda bir işi yapacaksak, onu gerçekleştirmek için program yazmamız gerekir. Örneğin, derslerimizin kayıtlarını ve notlarımızı tutmak istiyorsak ya da müşterilerimizin kayıtlarını tutmak istiyorsak bir programa ereksinimimiz var. Bunu Microsoft Excel gibi bir program aracılığıyla da yapabilirsiniz. Ancak program yazabilmek, bu işler için özel bir çözüm ya da uygulama geliştirmek anlamına gelir. İşte bu nedenle da yazılım yerine daha çok uygulama geliştirme (development) terimi kullanılır. Buradan "programı nasıl yazacağız?" sorusu akla gelir. Program, öncelikle bir işletim sistemi ya da platform için yazılır. Örneğin Windows XP için yazılan bir program Linux işletim sisteminde çalışmayacaktır. Platformun ardından programın yazılacağı dil seçilir. Örneğin Visual Basic ya da C++ gibi. Bu diller, bizim program yazmamızı sağlarlar. Bizim anlaşılabilir şekilde program geliştirmemizi ve geliştirdiğimiz programı bilgisayarın doğrudan çalıştırabileceği makine diline çevirirler. İşte, kabaca bu sürece programlama denir.

A. PROGRAM NEDİR?
Bir program bilgisayara ne yapması gerektiğini söyleyen bir dizi komuttur. Bilgisayarlar işlemlerin kendi anlayacağı dilde (makine dili) açıkça yazılmasını isterler. Ancak bu işlemlerin makine dilinde bir programcı tarafından yapılması yerine programlamanın yapısal biçimde bir dil aracılığıyla yapılmasını ve daha sonra çevrilerek bilgisayara anlatılması işlemini programlama dilleri üstlenirler. Bu çevirme işlemine derleme (compile) ya da yorumlama (interpriting) denir.

B. NESNE TABANLI PROGRAMLAMA
Nesne tabanlı programlama (object-oriented programming-OOP), program geliştirmek için kullanılan bir teknolojidir. OOP terimi değişik anlamlar taşımakla birlikte sağladığı standartlarla bileşen (component) programlamasını kolaylaştırmaktadır. Visual Basic özünde nesne-temelli bir programlama dilidir. Çok sayıda nesne hazır olarak Visual Basic içinde bulunur programcılar bu nesneleri kullanarak program yazarlar.
OOP (Object-Oriented Programming) üç prensipe sahiptir: encapsulation, inheritance, ve polymorphism. Bu terimlere kısaca bir bakalım:
Encapsulation nesne hakkındaki bilgiler ve işlemler anlamına gelir. Metot ve özellik olarak adlandırdığımız bu işlemler bir nesnenin niteliklerini ve işlemlerini ortaya koyar. Örneğin bir arabanın rengi, büyüklüğü gibi özellikleri.
Inheritance (miras, etkilenme) sözcüğünün anlamı ise bir nesnenin başka bir nesne üzerine (bir üst nesneden etkilenerek) kurulmasıdır. Örneğin bir arabanın parçalardan oluşması ve parçanın da arabanın tam nesnesinden etkilenmesi gibi.
Polymorphism ise belli bir işlemin (metodun) birçok nesne tarafından kullanılmasıdır.

NOT: Kanımca, .NET ile birlikte Microsoft gerçekten OOP üzerinde durmakta. Sizlere en kısa zamanda .NET dillerini öneririm. Bildiğiniz gibi sitemizde C# .NET dili var.

C. OLAY-TEMELLİ PROGRAMLAMA
Nesne temelli programlama gibi bir programlama teknolojisi olmamakla birlikte; adından söz edeceğimiz bir yaklaşım da olay temelli programlamadır. Bu terim daha çok kullanıcıyla iletişim kuran programlar geliştirme anlamına gelir. Kullanıcının fare tıklaması, klavyeden yazı yazması ya da neden olduğu diğer işlemler birer olay olarak algılanır ve programın işleyişi ona göre yönlenir.
Olay-temelli programlama (event-driven programming), klasik programlamanın aksine kullanıcıların işlemlerine (yapacakları hareketlere) göre programın yanıt vermesi temeline kurulu bir programlama sistemidir. Visual Basic ile geliştireceğimiz programlar için çoğunlukla olay temelli denilebilir.

II. MİCROSOFT VİSUAL BASİC
Visual Basic (VB olarak da anılır) Microsoft tarafından geliştirilmiş modern bir programlama ortamıdır. Visual Basic'in bir programın yazılıp çalıştırılmasından öte, program geliştirmek için çok sayıda araca sahip olması; kullanıcı arabiriminin tasarlanması, hataların giderilmesi, veritabanı yaratmak, gibi gelişmiş özelliklere sahiptir.
Visual Basic ile farklı düzeylerde (konularda) programlar geliştirilebilir. Visual Basic ile küçük bir işlemler için program geliştirilebileceği gibi, profesyonel programlar, veritabanı uygulamaları ve hatta Internet uygulamaları bile geliştirmek mümkündür. Örneğin bir cari hesap, stok, satış, imalat vb uygulamaları, oyun programı vb.
Visual Basic'in sahip olduğu araçlar:

-Kullanıcı ara birimi geliştirmek için çok sayıda kontrol.
-Programı derleme ve hata bulmaya yönelik çok sayıda araç.
-Değişik veritabanlarına erişim.
-Diğer uygulamaların fonksiyonlarını kullanmayı sağlayan Active XT teknolojisi.
-Uygulamanın EXE dosya olarak üretilebilmesi ve dağıtılması.
-Raporlama araçları.
-Veri yapısı araçları.

Visual Basic ile neler yapabiliriz?

-Basit ve genel amaçlı uygulamalar.
-Şirketler için geliştirilen özel uygulamalar.
-Ticari programlar, satış sistemleri, veritabanı uygulamaları.
-Ticari amaçlı paket programlar.
-Web uygulamaları.

A. BİR VİSUAL BASİC PROGRAMININ KISIMLARI
Bir programı belli kısımlardan oluşur. Bunların en basit olarak şu şekilde ele alabiliriz:

-Kullanıcı arabirimi.
-Bilgi işleme (hesaplamalar)
-Bilgi saklama (veritabanı işlemleri).
-Raporlama işlemleri.

Kullanıcı arabirimi bir programın ekranını oluşturur. Diğer bir deyişle kullanıcıların bilgi girdiği etkileşimli ekranlardır. Bunlara form diyeceğiz.
Bilgi işleme kısmı, programın yapacağı hesaplamaları ve işlemleri kapsar. Bu daha çok programın mantığı olarak adlandırılır.
Veritabanı işlemleri, bildiğiniz gibi birçok uygulama için çok önemlidir. Yine aynı şekilde raporlama da bilgilerin yazıcıdan ya da ekrandan alınmasını sağlar.

B. VB 6.0'I BAŞLATMAK
Visual Basic 6.0'ın Windows işletim sistemleri üzerine kurulması ile birlikle Visual Studio 6.0 program grubu ya da Visual Basic 6.0 program grubu Start menüsünde Programs grubunda yer alır. Visual Basic'i başlatmak için bu seçenek üzerine tıklanır.

C. ÇALIŞMA ORTAMI
Visual Basic 6.0'ın başlatılmasıyla birlikte, önce yazılacak programın (projenin) türü sorulur. Bu varsayım olarak (yaygın olarak) .EXE olarak seçilir. Ardından programlama ortamı ekrana gelir.
Visual Basic 6.0 ortamı özellikle program birimlerinin düzenlenmesi için çok sayıda bölüme sahiptir. Bu bölümler aracılığıyla programın tasarımı yapılır ve kod yazılır.
Visual Basic çalışma ortamı programın arabiriminin geliştirilmesi bakımından bir tasarım zamanı (design time) program geliştirme ortamıdır. Örneğin bir formun ya da bir kontrolün özellikleri, özellik tablosundan düzenlenebilir. Form ve diğer kontroller seçilerek özellikler (Properties) tablosundan renkleri vb. bütün özellikleri düzenlenebilir.

Project Penceresi:
Yeni bir Visual Basic programına bir proje (project) olarak başlanır. Bir projeye (uygulama) başlamadan önce geliştirilecek programın türü seçilir. Varsayılan proje türü Standard EXE dir. Standard EXE program, EXE dosya olarak çalışabilir bir programı yaratmak anlamına gelir.

Tablo: Proje tipleri

Standard EXE Normal bir Visual Basic projesi.
ActiveX EXE ActiveX kodu yaratma
ActiveX DLL ActiveX bileşini yaratma
ActiveX Control ActiveX kontrolü yaratma
VB Application Wizard Bir Visual Basic uygulamasını adım adım yaratır
VB Wizard Manager Sihirbaz yaratmayı sağlar.
Data Project Server veritabanlarına ulaşmak için yaratılan veritabanı projesi.
IIS Application Internet Information Server uygulaması yaratır.
Addin Add-in nesneleri yaratır.
ActiveX Document Dll ActiveX belgesi DLL olarak.
ActiveX Document EXE ActiveX belgesi EXE olarak.
DHTML Application Dynamic HTML (DHTML) teknolojisi Microsoft Internet Explorer içinde yer alacak sayfalar yaratır.
VB Enterprise Edition Co. Visual Basic Enterprise Edition özellikleri.

Open düğmesine tıklayarak ya da seçilen proje türüne çift tıklayarak yeni bir projeye başlanır.

Çalışma Ortamı:
Proje penceresiyle birlikte bir form ekrana gelir. Projenin başlangıç adı Project1, formun başlangıç adı ise Form1 dir.
Çalışma ortamının üst tarafında Visual Basic 6.0'ın menü çubuğu ve standart araç çubuğu yer alır. Ortamın sol tarafında araç kutusu (toolbox) yer alır. Ortada ise proje penceresi ve içinde bir form durur.
Ortamın sağ tarafında ise proje içindeki formları, modülleri ve diğer bileşenleri gösteren Project penceresi bulunur. Onun altında Properties (Özellikler) penceresi yer alır.
Çalışma ortamındaki ana sahne formdur. Programcı formu kullanıcının karşına gelecek ekran gibi düşünür ve tasarlar. Bu tasarımda ise yapılan ana işlem kontrolleri form üzerine yerleştirilmesidir.

Formlar:
Hemen hemen her Visual Basic uygulamasında bir form bulunur. Form üzerine denetimler ve grafikler eklenerek uygulama geliştirilir. Her bir form aynı zamanda form tasarımının yapıldığı bir alandır.
Formlar uygulamanın (programın) kullanıcı arabirimini oluşturur. Visual Basic kontrollerinden (components) istenilen kontroller form üzerine fare ile yerleştirilerek uygulamanın arabirimi oluşturulur.

Örneğin bir bilgi giriş ekranı form olarak yaratılır:

ADI: [metin kutusu]
ADRESİ: [metin kutusu]
NUMARASI: [metin kutusu]

Bu arabirim üzerinde metin kutuları (textbox), komut düğmeleri (command buttons) gibi veri-işlem elemanları yer alır. Ardından istenilen olaylara göre kodlar yazılarak programın yazılması sağlanır.

Kontroller:
İşte kullanıcı arabirimini hazırlamak için formlar üzerine veri girişi için metin kutusu (text box), bir işlemi başlatmak için komut düğmesi (command button) gibi birimler yerleştirilir. Bu veri-işlem birimlerine kontrol (control) denir. Bu kontroller, Visual Basic ortamında yer alan araç kutusundan seçilerek kullanılır.

Araç Kutusu (Toolbox):
Görsel programlama ortamlarında görsel kontrollerin çizilmesi için zengin bir araç kutusu kullanılır. Visual Basic araç kutusunda programın tasarımı sırasında kullanılmak üzere çok sayıda aracı içerir.
NOT: Bu dokümanlar Faruk Çubukçu tarafından hazırlanmıştır. Burada adı geçen ticari ünvanlar ve markalar bilgi amaçlı kullanılmışlardır ve kendi imtiyazlarına sahiptirler. Bu dokümanlar ticari amaçlı olarak kullanılmaz. Daha fazla bilgi için adresine bakınız.

Araç kutusunda yer alan standart kontroller:

Standart kontrol İşlevi
PictureBox Resim kutusu: Bitmap, Icon, Gif resimlerin gösterilmesini sağlar.
Label Etiket: Sadece bilgi vermek ya da görüntü olarak form üzerinde durur. Genellikle metin kutularının adlarını göstermek için kullanılır.
TextBox Metin kutusu: Veri girişi için kullanılan bir kontroldür. Hemen hemen bütün programlarda kullanıcılardan veri girişi, değiştirme yapması gereken alanlar gerekir. İşte metin kutusu bu amaçla kullanılır.
Frame Çerçeve: Kontrolleri gruplamak için kullanılır.
CommandButton Komut düğmesi: Bir işlemin başlatılmasını sağlar. Genellikle fare ile üzerine tıklanarak kullanılır.
CheckBox İşaret kutusu: Bir seçim yapmayı sağlar.
OptionBox Seçenek kutusu: Seçim yapmayı sağlar.
ComboBox Açılan kutu:
ListBox Liste: Birçok elemanı liste biçiminde göstermek için kullanılır.
HScrollBar Yatay kaydırma çubuğu: Yatay olarak kullanılan kaydırma çubuğu.
VScrollBar Dikey kaydırma çubuğu: Dikey olarak kullanılan kaydırma çubuğu.
Timer Zaman saati: Zamanın takip edilmesini sağlar.
DriveListBox Sürücü listesi: Sistemdeki sürücüleri listeler.
DirListBox Dizin listesi: Sistemdeki dizinleri (klasörleri) listeler.
FileListBox Dosya listesi: Bir dizin içindeki dosyaları gösterir.
Shape Şekil: Şekil çizmeyi sağlar.
Line Çizgi: Düz çizgi çizmek için kullanılır.
Image Resim gösterme: Sadece resimleri göstermek için kullanılır.
Data Data: Verileri göstermek için kullanılır.
OLE OLE:

D. FORM ÜZERİNE BİR KONTROL YERLEŞTİRMEK
Bir Visual Basic programının kullanıcı arabirimi form üzerine yerleştirilen kontroller ile tasarlanır. Bir kontrolün form üzerine yerleştirilmesi için şu işlemler yapılır:

1. Araç kutusundan istenilen araç üzerine tıklanır. Örneğin Text Box.
2. Form üzerinde istenilen bir yere gelinir ve kontrolün sol üst köşesi yerleştireceğiniz yere fare ile tıklanarak sürükleyin ve kontrol yerleştirilir.

III. UYGULAMA
Visual Studio 6.0 ya da Visual Basic 6.0 programını bilgisayarınıza yükleyin.

Visual Basic 6.0'ı başlatın.

İlk proje türünü .EXE olarak seçin.

Çalışma ortamını tanıyın:

Araç kutusundaki kontrolleri form üzerine ekleyin. Kaldırın.

Kontrollerin özelliklerine bakın.

Kontroller üzerinde çift tıklayın. Ekrana gelen kod penceresini inceleyin.

IV. GÖZDEN GEÇİRME
1. Bilgisayarlar hangi dilden anlarlar?
2. Visual Basic ile hangi programları yazabilirsiniz?
3. Program geliştirme adımları nelerdir?
4. Bir program işi aldınız. Nereden başlarsınız. Kodlamadan önce hangi hazırlıkları yaparsınız.
5. Form nedir? Her VB programı için bir form gerekir mi?
6. Denetim nedir?


Ders sonunda yapabilecekleriniz:

-Programın yapısı açıklamak.
-Veri elemanlarını tanımlamak.
-Veri türlerini açıklamak.

I. BİR VISUAL BASİC PROGRAMININ YAPISI
Bir Visual Basic programı bir proje dosyası olarak geliştirilir. Bu dosya Proje .vbp uzantılı bir dosyadır. Ayrıca proje dosyası için form ve modül gibi diğer dosyalar da yaratılır.

Visual Basic'in başlatılmasıyla beraber ya da bir proje içinde yeni bir uygulamaya başlamak için File menüsünden New Project komutu kullanılır. Ardından geliştirilecek programın Standard EXE ya da diğer işletilebilir birim şekli seçilir. Ardından boş bir form ile Visual Basic tümleşik program geliştirme ortamı programcının karşısına çıkar.

Uygulamanın arabirimi ve kodları yazıldıktan bütün kodlar bir proje olarak kayıt edilir. Projenin kayıt edilmesinden önce formların da kayıtları yapılır. Formlar .frm olarak, projeler de .vbp dosyası olarak kayıt edilir.

A. FORMLAR VE MODÜLLER
Diğer programlama dillerinde olduğu gibi Visual Basic'in de belli bir kod kuralları ve yöntemleri vardır. Visual Basic içinde görsel arabirimler form olarak kodlar da istenirse bir modül olarak saklanır.

. Form modülü
. Standart modülü

Basit uygulamalarda genellikle bir form bulunur. Bütün kodlar bu formun modülünde (kod alanı) yer alır. Uygulama büyüdükçe ek formlar projeye eklenerek modül sayısı artırılabilir. Projeye modül eklemek için Project menüsünden Add Module komutu kullanılır.

Formlar kullanıcı arabirimini tasarlandığı zemindir. Örneğin bir müşteri bilgileri için metin kutularının (text box) konacağı yer formdur. Formlar .FRM dosya uzantılı olarak kaydedilir.

Modüller ise uygulama içerisindeki sadece kod içeren birimleridir. .BAS dosya uzantılı dosya olarak kaydedilirler.

B. KODLAMA
Visual Basic'te kodlama belli yapılardaki birimlerle yapılır. Bunlar genel olarak yordam (procedure) olarak adlandırılır.

1. PROCEDURE (YORDAM YAPISI)
Bir Visual Basic programı çok sayıda yordamdan (prodecure) oluşur. Yapılacak işlemler birer yordam olarak tasarlanırlar. Yordamlar bir program bloğu ya da bir program parçası olarak düşünülebilir.

Visual Basic'te değişik türde yordamlar (procedure) kullanılır:

. Sub
. Function

Genel olarak bütün işlemler için bir Sub yordamı kullanılır. Bu yordamlar bir olaya bağlı olarak (bir düğmeye tıklandığında) ya da doğrudan çağrılarak çalıştırılır. Function yordamlar ise bir değer döndürürler. Örneğin bir faiz hesabını yapmak ve sonucunu döndürmek için fonksiyon kullanılmalıdır.

Bir Sub yordamının yapısı:

[Private|Public][Static] Sub yordam adı (argümanlar)

Deyimler.......

End Sub

Yordam başlatıldığında Sub ve End deyimleri arasında kalan satırlar işletilir.

Visual Basic'te yordamlar (procedure) ikiye ayrılırlar:

-Genel yordamlar
-Olay yordamları

Genel Yordamlar:
Bir genel procedure belli bir işlemi üstlenen program parçasıdır. Diğer yordamlardan çağırılarak kullanılırlar.

Yapısı:

Sub yordam adı(arguments )

-deyimler-

End Sub

Olay Yordamları:
Olay yordamları bir olayın (event) oluşmasına tepki olarak çalışırlar. Yaygın olarak bu yordamları kullanırız, çünkü kullanıcı etkileşimi (fare tıklaması ya da klavyeden basılan tuşlar) programın kontrolüne hakimdir. Visual Basic nesneleri (formlar, metin kutuları, düğmeler, vb) belli olayları tanırlar.

Bir komut düğmesinin olayları:

Click: Tıklama
GotFocus: Odaklanma,üzerine gelme.
KeyDown: Bir tuşa basmak.
MouseDown: Farenin bir tuşuna basmak.

Olay yordamları, bir nesnenin alt tire ile olaylara bağlı olarak geliştirilir. Bu adlar Visual Basic kod editörü tarafından otomatik olarak ya da manuel olarak oluşturulur.

Örnek:

Command1_Click

Olay yordamları Visual Basic nesnelerinin olaylarına bağlı olarak geliştirilirler: Örneğin Form1_load olay yordamı bir formun açılması sırasında çalışacak bir yordamı, Command1_Click olay yordamı da bir komut düğmesine tıklandığında çalışacak bir kod birimini gösterir.

Yapısı:

Sub kontrol adı_olay adı(argümanlar )

-deyimler-

End Sub

Olay yordamlarının adını kod editörü içinde doğrudan yazabileceğiniz gibi Visual Basic tarafından otomatik olarak koda eklenen yordam ve olay adlarını da kolayca kullanabilirsiniz.

Fonksiyonlar:
Bir procedure olarak düzenlenen fonskiyonlar belli bir işlemi kod olarak içeren ve bir değeri geri döndüren program parçalarıdır.

Bir fonksiyon yordamının yapısı:

[Private|Public][Static] Function yordam adı (argümanlar) [As tip]

deyimler..........

End Function

Fonksiyonlar ayrı bir yordam olarak düzenlenirler. Fonksiyonların kullanımında argümanlar önemlidir. Fonksiyonlar argümanları alırlar, bir dizi işlem yaparlar ve sonucu döndürürler.

Örnek:

Kod:
Function KDVHes(deger1, deger2, deger3)

-deyimler-

End Function

Kullanımı:

Toplam = Deger1 + KDVHes(ucret)
II. VERİ ELEMANLARINI TANIMLAMAK
Bir programda geçici olarak verilerin temsili ve değerlerin saklanması için değişkenlere gereksinim duyulur. Örneğin çok sayıda değeri birbiriyle karşılaştırmak ya da üzerlerinde çeşitli hesaplamalar yapmak için ekrandan alınan verileri; A, B, C gibi değişkenler olarak temsil etmek gibi. İşte bu nedenle birçok programlama dilinde olduğu gibi Visual Basic'te de geçici değerlerin saklanması için değişkenler (variables) kullanılır. Değişkenlerin mutlaka bir adı ve tipi vardır.

Bir değişken kullanılmadan önce tanımlanır. Bu tanımlama genellikle Dim deyimi ile yordamın başında yapılır:

Yapısı:

Dim Değişken [As türü]

Dim deyimi tanımlama deyimidir. Genellikle modülün ya da procedure'ın başında yer alır.
Değişken ise bilginin adını gösterir. Örneğin "Toplam" bir değişken adıdır.
Türü ise değişkenin tipini gösterir. Bir değişken içerdiği veri bakımından farklı özelliklere sahip olabilir.

Dim A As Integer
A = 15
A = A + 4

A. YEREL DE?İŞKENLER
Yerel değişkenler procedure-düzeyi değişkenlerdir. Bir procedure içinde tanımlanırlar, kullanılırlar. Procedure'ın başlamasıyla bu değişkenler tanımlanır.

Yerel değişkenler özellikle hesaplanan bir takım geçici değerlerin kullanılmasını sağlar. Genellikle Temp ya da Geçici gibi ekleri de bu yüzden alırlar.

TempToplam
GecTop
GecDeg1
AraToplam

Yerel değişkenler Dim deyimi ile tanımlanırlar:

Dim AraToplam As Integer
Dim Mesaj As Variant

Geçici olarak tanımlanan yerel değişkenler procedure içinde yapılan ve kullanılan hesaplamalar için idealdir. Eğer bir değişkene uygulama boyunca diğer zamanlarda da erişilecekse (değişken kullanılacaksa) o zaman Dim ile kullanılması daha iyi olur.

B. VERİ TÜRLERİ
Bir değişken tanımlanırken değişkenin adı ve tipi (type) belirtilir. Genellikle varsayım tip olan Variant bir veri kullanılmayacağı zaman önce değişken tanımlanır ve tipi belirtilir. Değişkenin tipi onun içereceği bilgi türünü ifade eder.

Veri Adı Tipi
Adı Soyadı Alfabetik
Ücreti Sayısal
Cinsiyeti Evet/Hayır

Visual Basic ile tanımlanan değişken tipleri şunlardır:

Tablo: Değişken tipleri
Tip Bellek alanı Değer aralığı
Integer 2 bayt -32,768 to +32,767
Long 4 bayt (yaklaşık) +/- 2 milyar
Single 4 bayt +/- 1E-45 to 3E38
Double 8 bayt +/- 5E-324 to 1.8E308
Currency 8 bayt +/- 9E14
String 1 karakter bir bayt Sabit uzunluklu veriler için 65,400 karakter. 2 milyar karakter dinamik veriler için
Byte 1 bayt 0 to 255
Boolean 2 bayt True ya da False
Date 8 bayt 1/1/100 to 12/31/9999
Object 4 bayt N/A
Variant 16 bayt +1 bayt her karakter için N/A

NOT: Bu dokümanlar Faruk Çubukçu tarafından hazırlanmıştır. Burada adı geçen ticari ünvanlar ve markalar bilgi amaçlı kullanılmışlardır ve kendi imtiyazlarına sahiptirler. Bu dokümanlar ticari amaçlı olarak kullanılmaz. Daha fazla bilgi için adresine bakınız.

Değişken tipini tanımlamak için Dim, Private, Public, Static gibi deyimler kullanılır. Ardından tip belirtilir. Tipler Currency, Double, String gibi deyimlerle tanımlanır.

Kod:
Private I As Integer
Dim Toplam As Double
Static ismi As String
Public bakiye As Currency

Bir tanımlama deyimi ile çok sayıda değişken de tanımlanır:

Private I As Integer, Toplam As Double
Private ismi As String, bakiye As Currency

III. UYGULAMA
Visual Basic ile basit bir hesap makinesi yapmaya ne dersiniz?

Ortamda oluşan Form1 üzerinde bir hesap makinesinde olduğu gibi bir Label, işlemleri temsil etmek için birer tane Command Button, ayrıca rakamları girmek için de her bir rakam için bir yine birer Command Button yapın.

Label üzerinde girilen değeri, Deger1 adlı bir değişkene aktarın:

Deger1 = Label1.Text

Bu işlem birinci sayının girilmesinin ardından bir işlem tuşuna, örneğin + düğmesine basıldığında olmalıdır.

Sub Command1_Click()

Deger1 = Label1.Text

End Sub

Ardından Label silinir ve ikinci rakamın girilmesi beklenir:

Label1.Text = " "

Ardından ikinci işleme basılır ve yine değişkene değer atanır:

Sub Command2_Click()

Deger2 = Label1.Text

End Sub

Ardından kullanıcı = düğmesine tıkladığında da toplama işlemini yapmak gerekir. Bu işlem için de aşağıdaki gibi bir kodlama gerekir:

Sub Command3_Click()

Toplam=Deger1 + Deger2
Label1.Text = Toplam

End Sub


IV. GÖZDEN GEÇİRME
1. Visual Basic programlarının ana dosyası nedir? Proje ve formu tanımlayın.
2. String veri tipinin özellikleri nelerdir. Değişken ve sabit uzunluklu string bilgilere örnek verin?
3. Bir programı Form1 ile başlatmak istemezseniz ne yaparsınız?
4. Variant türü değişken kullanımının fayda ve zararlarını açıklayın?


Ders sonunda yapabilecekleriniz:

-Denetimleri tanımlamak ve kullanmak.

I. DENETİMLER
Denetimler (controls) programın arabirimini oluşturmada bize yardım eden nesnelerdir. Visual Basic ile programlamada kullanıcı ile iletişimde bu kontroller kullanılır. Örneğin kullanıcıdan verileri almak için metin kutuları (text box), komut bildirimleri için komut düğmesi (command button) hep birer denetimdir.

Visual Basic başlatıldığında Toolbox üzerinde standart Visual Basic kontrolleri görünür.

Bu kontroller şunlardır:

Tablo: Araç kutusunda yer alan standart denetimler

Standart kontrol İşlevi
PictureBox Resim kutusu: Bitmap, Icon, Gif resimlerin gösterilmesini sağlar.
Label Etiket: Sadece bilgi vermek ya da görüntü olarak form üzerinde durur. Genellikle metin kutularının adlarını göstermek için kullanılır.
TextBox Metin kutusu: Veri girişi için kullanılan bir kontroldür. Hemen hemen bütün programlarda kullanıcılardan veri girişi, değiştirme yapması gereken alanlar gerekir. İşte metin kutusu bu amaçla kullanılır.
Frame Çerçeve: Kontrolleri gruplamak için kullanılır.
CommandButton Komut düğmesi: Bir işlemin başlatılmasını sağlar. Genellikle fare ile üzerine tıklanarak kullanılır.
CheckBox İşaret kutusu: Bir seçim yapmayı sağlar.
OptionBox Seçenek kutusu: Seçim yapmayı sağlar.
ComboBox Açılan kutu: Seçenek listesinden seçim yapmak için kullanılır.
ListBox Liste: Birçok elemanı liste biçiminde göstermek için kullanılır. Seçenek listesinden seçim yapmak için kullanılır.
HScrollBar Yatay kaydırma çubuğu: Yatay olarak kullanılan kaydırma çubuğu.
VScrollBar Dikey kaydırma çubuğu: Dikey olarak kullanılan kaydırma çubuğu.
Timer Zaman saati: Zamanın takip edilmesini sağlar.
DriveListBox Sürücü listesi: Sistemdeki sürücüleri listeler.
DirListBox Dizin listesi: Sistemdeki dizinleri (klasörleri) listeler.
FileListBox Dosya listesi: Bir dizin içindeki dosyaları gösterir.
Shape Şekil: Şekil çizmeyi sağlar.
Line Çizgi: Düz çizgi çizmek için kullanılır.
Image Resim gösterme: Sadece resimleri göstermek için kullanılır.
Data Data: Verileri göstermek için kullanılır.
OLE OLE: Diğer bir uygulamadan nesne bağlamayı sağlar.


A. DENETİMLERİN KULLANIMI
Denetimleri projedeki formlara eklenmesi için, araç kutusundan fare ile sürüklenerek form üzerine bırakılır.

Şimdi Denetimlerin bazılarına bir göz atalım:

NOT: Bu dokümanlar Faruk Çubukçu tarafından hazırlanmıştır. Burada adı geçen ticari ünvanlar ve markalar bilgi amaçlı kullanılmışlardır ve kendi imtiyazlarına sahiptirler. Bu dokümanlar ticari amaçlı olarak kullanılmaz. Daha fazla bilgi için adresine bakınız.

1. Textbox (Metin Kutusu)
Bilgi girişi için kullanılır. Birçok programda kullanılan veri giriş alanları; adı soyadı, adresi, telefon numarası gibi alanlar birer metin kutusudur. Metin kutusu veri girişi sırasında standart olarak silme, değiştirme, kesme-kopyalama-yapıştırma, birden çok satır girme özelliklerine sahiptir.
NOT: Bu dokümanlar Faruk Çubukçu tarafından hazırlanmıştır. Ticari amaçlı olarak kullanılmaz. Daha fazla bilgi için adresine bakınız.

2. Command Button (Komut Düğmesi)
Hemen hemen en yaygın kullanılan kontrol ve yaygın olarak Click olayıyla birlikte kullanılır. Birçok işlem fare ile tıklama ile başlatılır. İşte bu olaya click (tıklama) denir. Birçok işlem düğmeye tıklanarak başlar.

Örnek:

Kod:
Private Sub Command1_Click()
Msgbox "düğmeye tıklandı!!!"

End Sub

3. CheckBox (İşaret Kutusu)
Belli seçeneklerin seçili olup olmadıklarını belirtmeye yarar. Genellikle bir grup seçenekten bir ya da daha çoğunun seçilmesiyle işler.

Örneğin bir müşteri bilgisinde belli özellikleri seçmek için kullanılabilir ya da öğrencinin seçmeli olarak aldığı dersleri düşünün.

Seçmeli Dersler:

EğitimiBeden
Müzik
Halk Oyunları

Value özelliğinin 1 olması o seçenek kutusunun seçilmiş olduğunu gösterir. 0 değeri seçeneklerin seçilmediğini gösterir.

Check1.Value = 1 Then .. deyimi ile işaret kutusunun seçildiği anlaşılır.

4. Option Button (Seçenek Düğmesi)
Birçok seçenekten sadece birisininin seçildiği bir seçenek kontrolüdür. Genellikle bir grup seçenekten birisinin seçilmesiyle işler. Örneğin müşterinin gurubu, özellikleri ya da bir personelin eğitimi gibi (ilk, orta, yüksek değerlerinden birisi).

Value Özelliği
Value özelliğinin True olması o seçenek kutusunun seçilmiş olduğunu gösterir.

Option1.Value = True

5. ComboBox (Bileşik Kutu)
Birçok seçenekten birisinin seçilmesini sağlayan bir kutudur. Özellikle belli seçeneklerden birisinin açılan bir listeden seçilmesini sağlar. Çok yaygın bir kullanıma sahiptir.

Listeye bir eleman eklemek için kullanılır.

Combo1.AddItem "Adana"
Combo1.AddItem "Ankara"

6. ListBox (Liste Kutusu)
Birçok elemanı bir liste olarak göstermeye yarar. Bunlar adlar olabilir, müşteri listesi olabilir ya da birçok seçeneğin yer aldığı listeler olabilir.

Listeye bir eleman eklemek için kullanılır.

List1.AddItem "Ankara"
List1.AddItem "İzmir"
List1.AddItem "Adana"


7. Picture Box (Resim Kutusu)
Picture özelliği PictureBox içindeki resmi belirtir. Bu özellik aracılığıyla değişik resim dosyaları form üzerinde görüntülenebilir.

Picture özelliği ile bir resimi yüklemek için LoadPicture fonksiyonu kullanılır.

Picture1.Picture = LoadPicture ("c:\resim1.bmp")


II. UYGULAMA
Öğrenci bilgilerini kaydetmek için bir form tasarlayın:

ADI SOYADI:
ADRESİ:
BÖLÜMÜ:
DO?UM TARİHİ:
İLİ:
KAYIT TARİHİ:

Yukarıdaki alanları bir metin kutusu olarak tasarlayın. Ancak bu alanlardan BÖLÜMÜ alanını Combo Box olarak tasarlayın. Ve seçeneklerini İŞLETME, EKONOMİ ve PAZARLAMA olarak düzenleyin.

III. GÖZDEN GEÇİRME
1. Kontrollerin adlandırılmasındaki ne tür bir yaklaşım izlersiniz.
2. ComboBox ile ListBox'ın benzer ve farklı yönleri nelerdir?
3. Image ile Picture'ın farkları nelerdir?
4. Araç kutusundan bir kontrol nasıl kaldırılır?

Dersin sonunda yapabilecekleriniz:

-Form tasarımını açıklamak.
-Form metot, olay ve özelliklerini açıklamak.

I. FORMLAR
Kullanıcı arabirimi uygulamaların görünen kısmını oluşturur. Bunun yanı sıra kullanıcıların veri girişi, programın işletimi kullanıcı arabirimi sayesinde yapılır. Kullanıcı arabiriminin en önemli parçası formlardır. Formlar kullanıcı arabiriminin zemini olurlar.

Bir uygulama geliştiriyorsunuz; stok kartları, cari hesap kartları, vb bilgi giriş ve görüntüleme ekranları hazırlayacaksınız. İşte bunlar formdur.

Formlar uygulamalarda zemin olarak yer alırlar. Uygulama ortamına bir form eklemek için şu işlemler yapılır.

Yeni bir form eklemek için:

1. Project menüsünden Add Form komutu seçilir.
2. Form tipi seçilir.
3. Open düğmesine tıklanır.

A. FORMLARI KULLANMAK
Formları kullanmak, formları tasarlamak ve onların görüntülenmesi kontrol etmek anlamına gelir. Formları tasarlamak, yeni formları projeye eklemek ve gereken kontrolleri onların üzerine eklemektir.

1. Show Metodu
Bir formu gösterir.

Yapısı:

nesne.Show

Nesne bilgisi gösterilecek formu belirtir.

Show metodu ile gösterilmek üzere çağırılan form yüklenmemişse Visual Basic onu otomatik olark yükler.

Kod:
Private Sub Command1_Click()
Form2.Show
End Sub

Private Sub Command2_Click()
Form2.Hide
End Sub

Private Sub Command3_Click()
Load Form2
End Sub

Private Sub Command4_Click()
Unload Form2
End Sub
2. FORM OLAYLARI

Form olayları form üzerindeki işlemler sonucu oluşan tanımlı işlemlerdir.

Tablo: Form Olayları

Olay Açıklama

Activate Pencerenin aktif pencere olmasını sağlar.
Click Form üzerine tıklamak.
DblClick Form üzerine çift tıklamak.
Deactivate Pencerenin aktif pencere olmaması.
GotFocus Formun aktifleştirilmesi.
KeyDown, KeyUp Tuşa basmak ve bırakmak.
KeyPress Tuşa basmak
Load Formun yüklenmesi.
LostFocus Formun aktifliğini kaybetmesi.
MouseDown, MouseUp Farenin tuşuna basmak ve bırakmak.
MouseMove Farenin sürüklenmesi.
Paint Formun taşınması ve genişletilmesi işleminden sonra oluşur.
QueryUnload Uygulama kapanmadan önce.
Resize Formun boyutlarının değişmesi.
Terminate Formun bütün referanslarının sonlanması.

Click Olayı:
Kullanıcının nesne üzerinde farenin tuşuna basıp bırakmasıyla oluşur. Form üzerinde bir alan fare ile tıklamak bu olayı oluşturur. Ayrıca kontrolün değerinin değişmesi de Click olayını oluşturur.

Yapısı:

Private Sub Form_Click( )

Click olayı genellikle bir nesneye bağlanır. Command1_Click ya da başka bir kontrol. Click olayı ayrıca fare tıklamasıyla birlikte MouseDown ve MouseUp olaylarını da oluşturur.

NOT: Bu dokümanlar Faruk Çubukçu tarafından hazırlanmıştır. Burada adı geçen ticari ünvanlar ve markalar bilgi amaçlı kullanılmışlardır ve kendi imtiyazlarına sahiptirler. Bu dokümanlar ticari amaçlı olarak kullanılmaz. Daha fazla bilgi için adresine bakınız.

B. BAŞLANGIÇ FORMU
F5 tuşuna bastığınızda (ya da Start, Run komutu) projenizin Form1 olarak düzenlenen formu ekrana gelir. Ancak birçok durumda başka bir formun ilk başta ekrana gelmesini ya da formlardan önce başka işlemlerin yapılmasını isteyebilirsiniz.
NOT: Bu dokümanlar Faruk Çubukçu tarafından hazırlanmıştır. Ticari amaçlı olarak kullanılmaz. Daha fazla bilgi için adresine bakınız.

Başlangıç (startup) formunu değiştirmek için:

1. Project menüsünden Project Properties komutu seçilir.
2. General sekmesi seçilir.
3. StartUp Object bölümünde istenilen form seçilir.
4. OK düğmesi ile seçim onaylanır.

Olay-temelli bir uygulama son formun kapanmasıyla sona erer. Ancak uygulamanın kapanmasından önce bütün formların kapandığının kontrol edilmesi gerekir. Bu işlem için yüklü formların Unload edilmesi gerekir.

Eğer uygulamada sadece bir form varsa onu Unload etmek için:

Private Sub Command5_Click()
Unload Me
End Sub


III. UYGULAMA
Önceki derste yaptığınız projede, birinci forma bir form daha ekleyin. Ardından birinci form üzerine bir düğme koyarak ikinci formu görüntüleyin. Ardından, ekrana gelen ikinci formun üzerinde de bir düğme daha koyarak formun kapanmasını ve birinci forma geri dönülmesini sağlayın.

IV. GÖZDEN GEÇİRME
1. Form nasıl görüntülenir?
2. Bir formu Unload ve Hide etmeyi karşılaştırın?

Ders sonunda yapabilecekleriniz:

-Program içindeki akış kontrolünü açıklamak.

I. PROGRAM KONTROLÜ
Program içinde tanımlama deyimleri, atama deyimleri yer alır. Ancak programın işleyişinde bu deyimler sırasıyla değil de belli bir mantıkla işletilmesi gerekir. İşte program deyimlerinin işleyiş sırasının kontrolüne program kontrolü denir.

Program kontrolü karar yapıları ve döngülerle sağlanır:

Karar yapıları:
-If...Then..Else
-Select Case

Karar yapılarının yanı sıra yaygın olarak kullanılan bir diğer yapı da döngü (loop) tur. Döngüler özellikle programın etkinliği bakımından önemli bir programlama tekniğidir.

Döngü Yapıları:
-Do...Loop
-For...Next

A. DÖNGÜLER
Döngüler işlemlerin belli bir sayıda ya da koşulla ilgili olarak yinelenmesi (tekrarı) anlamına gelir.

Döngü yapıları:

Do...Loop: Bir koşula göre döngü.
For...Next: Belli bir sayıda döngü (sayaçlı).

Bir sayaçlı döngü For...Next döngüsü olarak bilinir. For deyimi ile döngünün sayacını tanımlanır. Next deyimi ile yinelecek blok sona erer. Döngünün her dönüşünde sayaç değişkeni bir sayı artırılır. Böylece bir sayıdan diğerine kadar işlemler sürüdürülür.

Do...Loop Deyimi:
Bir blok deyimi verilen koşul doğru (True) olduğu sürece işletir.

Yapısı:

Do
[ifade bloğu]
[Exit Do]
[ifade bloğu]
Loop [{While | Until} koşul]

Do döngülerinin temelinde koşul (condition) yatar. Bir koşul True ya da False olabilen bir ifadedir.

Tablo: İlişki operatörleri
Operatör Anlamı
< Küçüktür
<= Küçük eşittir
> Büyüktür
>= Büyük eşittir
<> Eşit değildir
= Eşittir
And Ve
Or Veya - Ya da
Not Değil

Örnek: Bir döngü kurma

Do While Ücret < 100000 ' Ücret 100000 den küçük olduğunda
Toplam = Toplam + Ücret
Loop

For...Next Deyimi:

Bir grup deyimi belli sayıda çalıştırarak (tekrar ederek) bir döngü oluşturur. Örneğin birden ona kadar (on kere) şu işlemi yap şeklinde. Özellikle bir döngü denetim değişkenin kullanıldığı (sayaç) bu döngü yapısı iç içe döngülerin de yapılmasını sağlar. For.Next döngüleri özellikle dizilerin işlenmesinde de yaygın olarak kullanılır.

Yapısı:

For sayaç = başlangıç To bitiş [ Step artırım ]
[ifade bloğu]
[Exit For]
[ifade bloğu]
Next [sayaç]

Örnek: Birden ona kadar sayıların toplamını alır:

Kod:
Sub Button1_Click ()
Dim Toplam As Double
Toplam = 0
For I = 1 To 10
Toplam = Toplam + I
Next I
MsgBox "1'den 10'a kadar sayıların toplamı: " & Toplam
End sub
NOT: Bu dokümanlar Faruk Çubukçu tarafından hazırlanmıştır. Burada adı geçen ticari ünvanlar ve markalar bilgi amaçlı kullanılmışlardır ve kendi imtiyazlarına sahiptirler. Bu dokümanlar ticari amaçlı olarak kullanılmaz. Daha fazla bilgi için adresine bakınız.

B. KARAR YAPILARI
Karar yapıları If...Then...Else ve Select...Case deyimleriyle gerçekleştirilir. If...Then...Else deyimi belli bir deyimi ya da bir blok deyimi bir koşula bağlı olarak işletmeyi sağlar. Koşulun doğru olması True, yanlış olması False anlamına gelir. Select Case deyiminde ise özellikle bir karar değişkeninin aldığı değerlere göre değişik işlemlerin yapılması sağlanır.

Karar yapılarının temelinde değerler arasındaki ilişkiler yatar. İlişkiler değerler arasındaki operatörlerle kurulur.

Tablo: İlişki operatörleri
Operatör Anlamı
< Küçüktür
<= Küçük eşittir
> Büyüktür
>= Büyük eşittir
<> Eşit değildir
= Eşittir
And Ve
Or Veya - Ya da
Not Değil

If...Then...Else Deyimi:

Klasik olarak kullanılan karar mekanizmasıdır. Eğer koşul sağlanıyorsa (if) bunu yap; yoksa şunu yap (else) gibi:

If koşul Then
[işlem1]
Else
[işlem2]
End If

If-Then-Else yapısının birinci kullanım biçiminde genellikle basit ifadelere karşılık gelen ifadeler çözülür. Koşul doğruysa (True) Then'den sonraki deyim işletilir, değilse bu deyimler atlanır. İkinci kullanım biçiminde ise; daha karmaşık hesaplamalara ve kararlara karşılık gelen ifadeler çözülür. Bu yapıda koşul doğruysa işlem1 yerine getirilir, değilse Else'den sonra belirtilen işlemler yerine getirilir.

[kSelect Case Deyimi:[/f

Bir değerin test edilmesini sağlayan ve yaygın kullanılan bir yapıdır. Select Case yapısı bir koşul ya da değişken için olası değerlerin değerlendirilmesini sağlar. Diğer bir deyişle bir ifadenin değerine göre bir ya da daha çok deyim grubunun (ifade bloğunun) işletilmesini sağlar.

Yapısı:

Select Case test değeri
Case değer1
deyim blok 1
Case değer2
deyim blok 2
End Select

Select Case yapısı içindeki ilk deyim Select Case'dir. Ardından bir değeri olan test değişkeni yer alır. Bu değer bir sayı, string ya da fonksiyon olabilir. Ardından koşulların belirtildiği Case deyimleri yer alır.

Örnek: Ücret hesabı

Kod:
Ücret= Val(Text1.Text)
Select Case Ücret
Case 1000 to 1100
Vergi = Ücret * 0.20
Case 1101 to 1200
Vergi = Ücret * 0.25
Case 1201 to 1300
Vergi = Ücret * 0.30
Case Else
Vergi = Ücret * 0.40
End Select
II. UYGULAMA
Önceki derslerde ekrandan alınan tarih bilgilerini kontrol etmek için IF'li bir yapı oluşturabilirsiniz. Örneğin kayıt tarihi olarak girilen bilginin günün tarihinden daha küçük olması gerekir.

III. GÖZGEN GEÇİRME
1. Karar yapılarını açıklayın.
2. IF ve Select yapılarını birbiriyle karşılaştırın. Hangi durumlarda tercih edilebilir?
3. Döngüleri yarıda kesip çıkmak mümkün mü? Evet ise nasıl?

Ders sonunda yapabilecekleriniz:

-Hata denetimini ve araçlarını açıklamak.

I. HATA DENETİMİ
Hata denetimi (troubleshooting) programda oluşan çalışma zamanı ve diğer kodlama hatalarının tanımlanması (teşhis) ve giderilmesi için yapılan çalışmalardır.

Visual Basic, programların yazılması (derlenmesi ve çalıştırılması) sırasında karşılaşılan hatalara karşı geliştirilmiş bir hata bulma ve düzeltme (debugging) olanağına sahiptir.

Programın çalıştırılması sırasında kendisinden kaynaklanan bir hata varsa, hata bildirilir. Bunun dışında çalışma zamanı hataları ise, programın çalışması sırasında beklenmeyen bir durum sonucu oluşur. Örneğin okunacak dosyanın olmaması gibi. Bu durumda program hata verir. İşte bu durumlara karşı alınan önlemlere hata denetimi denir.

A. ÇALIŞMA ZAMANI HATALARININ KONTROLÜ
Çalışma zamanı hataları (run-time errors) programın çalışması sırasında oluşan hatalardır. Program hazırlanmış ve kullanıcıya sunulmuştur.

Örneğin programın çalışması sırasında belleğin dolması ya da bir hesaplamada sıfıra bölüm sonucu değer oluşmaması gibi durumlar birer çalışma zamanı hatasıdır.

Çalışma zamanı (run-time) hatalarına karşı herhangi bir önlem alınmazsa program hata verir ve kesilir. Diğer bir açıdan; bu durum kullanıcılar karşısında düşülebilecek en kötü durumlardan birisidir. Bu nedenle çalışma zamanı hatalarına karşı belli önlemler daha önceden alınmalıdır.

Bu hatalar 1-1000 arasında hata kodu döndürürler. Bu hata kodları On Error deyimi ve Err nesnesi ile birlikte ele alınarak hataların değerlendirilmesi ve programın uygun biçimde yönlendirilmesi sağlanır.

Tablo: Kontrol edilebilir bazı hatalar

Kod Mesaj

3 Return without GoSub (GoSub'sız Return)
5 Invalid procedure call (geçersiz procedure çağırması)
6 Overflow (taşma)
7 Out of memory (bellek yetersiz)
9 Subscript out of range (dizi dışı)
10 This array is fixed or temporarily locked (dizi sabit ya da kilitli)
11 Division by zero (sıfıra bölme)
13 Type mismatch (tip uyumsuzluğu)
14 Out of string space (string alanı yetersiz)
..

B. ON ERROR DEYİMİ
Hata oluşumunda; mesaj vermek ve programın kontrolünü sağlamak için belli bir program parçasının işletilmesini sağlanabilir. Bu işlem için hata kontrolüyle ilgili olarak bir program bloğunun yazılmasını sağlanır.

Yapısı:

On Error GoTo satır
On Error Resume Next
On Error GoTo 0

On Error deyiminin parametreleri şunlardır:

Parametre Açıklama
Go To 0 Procedure'daki hata kontrolünü iptal eder.
GoTo satır / etiket Hata kontrolü satırının belirtilen satırdan ya da etiketten başlatılmasını sağlar.
Resume Next Hatanın ardından programın bir sonraki deyimi işleyerek programı çalıştırmayı sürdürmesini sağlar.

Eğer programcı, programında bir On Error deyimi kullanmaz ve olası hataları kontrol altına almazsa; hata oluştuğunda program çalışma zamanı içinde hatayı verir ve kesilir.

Program içinde bir hata denetimi yapılırsa; hata oluştuğu anda program kontrolü, hata kontrolü kısmına atlar. Hata denetimi; Resume, Exit Sub ya da Exit komutuna kadar aktif kalır. Hata denetiminin ardından hatanın tanımlanması için Err nesnesinin Number özelliği kullanılır.

Örnek : Sıfıra bölünme hatalarına karşı tuzak

Aşağıdaki örnekte OnError ile 11 (Division by Zero) hatası kontrol edilmektedir:

Kod:
Sub Button1_Click ()
On Error GoTo HataKontrol
A = 15
B = 0
Sunuc = A / B

Exit Sub 'burada programa son verilir.
HataKontrol:
Select Case Err.Number
Case 11: Mesaj = "Sıfıra bölünme hatası oluştu!!!"
End Select
MsgBox Mesaj
Resume Next

End Sub

NOT: Bu dokümanlar Faruk Çubukçu tarafından hazırlanmıştır. Burada adı geçen ticari ünvanlar ve markalar bilgi amaçlı kullanılmışlardır ve kendi imtiyazlarına sahiptirler. Bu dokümanlar ticari amaçlı olarak kullanılmaz. Daha fazla bilgi için adresine bakınız.

II. HATA DÜZELTME ARAÇLARI
Bir Visual Basic programı geliştirirken ya da programın çalışması sırasında bir hata ile kesilmesinden sonra hatanın bulunması ve giderilmesi için belli araçlar kullanılır. Bunların başında Debug (Hata Giderme) araç çubuğu gelir:


Debug araç çubuğunun kullanılması için programın kesilmesi gerekir. Kesme (break) işlemi hata sonucunda ya da manuel olarak da yapılabilir:

Programın kesilmesi ya da Break düğmesine tıklanarak program debug moda alınır. İşte bu durumda programcı Visual Basic hata giderme araçlarını kullanır

A. KESME NOKTASI (TOGGLE BREAKPOİNT)
Programın bir yerine gelip durmasını istiyorsunuz. Ve o aşamada değerleri kontrol edeceksiniz. İşte bu olanağı size kesme noktası sağlar.

Kod içinde kesme noktası ile işaretlenen satır işletilmeden önce program durur. Kesme noktası genellikle programı belli bir yerde durdurup o aşamada bazı değişkenlerin değerlerinin kontrol edilmesini sağlar.

Bu işlem için araç çubuğundaki Toogle BreakPoint düğmesi kullanılır. Tekran tıklanarak kesme noktası kaldırılır.

B. BİLGİ PENCERELERİ (LOCALS WİNDOW, IMMEDİATE WİNDOW VE WATCH WİNDOW)
Program kesildikten sonra; Procedure içinde bir değişkenin ya da bir ifadenin seçilerek değerinin ne olduğuna bakılmak istenirse o zaman anlık izleme penceresi (instant watch) kullanılır.

Locals Window:
Program kesildiğinde bulunulan procedure içinde tanımlanan bütün değişkenlerin değerini verir:

Expression sütünunda değişkenlerin adları listelenir. Bütün class modüllerinde buradaki ilk değer <Me> değeridir. Bu değerin üzerine tıklanarak genişletilir.
Value sütünunda ise değişkenin değeri görünür. Bu değerin üzerinde çift tıklanarak değişiklik yapılabilir.

Immediate Window:
Program kesildikten sonra; procedure içinde bir değişkenin ya da bir ifadenin seçilerek değerinin ne olduğuna bakılmak istenirse o zaman anlık izleme penceresi kullanılır.

Anlık izleme penceresinde değişkenlerin ya da ifadelerin değerlerini göstermek için (Print) deyimi ya da ? kullanılır. Ayrıca istenirse kod satırından Immediate Window ekranına sürükleme yapılır.

Örnek:

? toplam


III. UYGULAMA
6 Owerflow ve 13 Type Mismatch (değişken türleriyle ilgili sorunlar) hataları üzerine bir hata kontrolü satırı yazın:

Örnek:

On Error GoTo HataKontrol
...

HataKontrol:
Select Case Err.Number
Case 6: Mesaj = "Bellek dolu!!!"
End Select
MsgBox Mesaj
Resume Next


IV. GÖZDEN GEÇİRME
1. Programınızda daha az hata ile karşılaşmak için neler yaparsınız?
2. Çalışma zamanı hatalarına karşı neler yapılır? Açıklayın.
3. Resume deyiminin görevi ve parametreleri nelerdir?
4. Err nesnesinin görevi ve metotları nelerdir?

Ders sonunda yapabilecekleriniz:

-Veritabanı kullanım açıklamak.
-ADO veri erişim yöntemini açıklamak.
-Veritabanına yazmak ve okumak.
-SQL Server ve Access veritabanlarına erişim.

I. ADO VERİ ERİŞİM YÖNTEMİ
Visual Basic uygulamalarına baktığınızda çoğunun veritabanı uygulaması olduğunu görürsünüz. Bu nedenle Visual Basic 6.0 ile veritabanı uygulaması geliştirmek için çok sayıda yenilikler yapılmıştır. Bu yeniliklerin başında yeni veri erişim yöntemi ADO (ActiveX Data Objects) gelir.


A. ADO'YU KULLANMAK
ADO nesnelerini kullanmadan önce, diğer bir deyişle programınızda ADO kullanarak veritabanı işlemlerini yapmadan önce ADO nesnelerini ve referanslarını Visual Basic ortamına eklemeniz gerekir.

1. Project menüsünden References komutu kullanılır.
2. Microsoft ActiveX Data Objects 2.0 ya da daha ilerisi seçilir.

İPUCU: ADO versiyonları ve Visual Basic Service Pack'leri konusunda daha geniş bir araştırma yapınız. [Sadece kayıtlı Üyelerimiz Linkleri görebilir. ].
Örneğin formlarınızdaki metin kutularını ya da gridleri veritabanına bağlamak için ADODC bileşenin eklenmesi gerekir. Bu durumda ortama ADO kontrollerini de eklemeniz gerekir.

1. Project menüsünden Components komutu kullanılır.
2. Microsoft DataGrid Control 6.0 seçilir. Ayrıca Microsoft ADO Data Control 6.0'ında eklenmiş olması gerekir.
3. OK düğmesine tıklanarak kontrol projeye eklenmiş olur.

Ardından ADO DC üzerinde sağ tıklayarak elde ettiğiniz iletişim kutusunda veritabanı erişiminin birçok işlemini yapabilirsiniz. Geriye bir tek şey kalır, o da verileri görüntüleyecek olan DataGrid'in DataSource özelliğini ADODC olarak düzenlemek.

1. FORM ÜZERİNDEKİ KONTROLLERİ ADO DATA CONTROL'E BA?LAMAK
ADO Control aracılığıyla veri kaynağı ile bağlantı kurulduktan sonra, TextBox, ComboBox, ListBox, Grid gibi kontrollerle birlikte kullanılabilir.

NOT: Bu dokümanlar Faruk Çubukçu tarafından hazırlanmıştır. Burada adı geçen ticari ünvanlar ve markalar bilgi amaçlı kullanılmışlardır ve kendi imtiyazlarına sahiptirler. Bu dokümanlar ticari amaçlı olarak kullanılmaz. Daha fazla bilgi için adresine bakınız.

Bir kontrolün tasarım zamanında ADODC'e bağlanması için DataSource özelliğinin düzenlenmesi gerekir. Yine aynı şekilde bu işlemler çalışma zamanında da yapılabilir. Kullanılan kontrole göre kullanılan özellikler değişir. Örneğin bir TextBox kontrolünü ADODC ile ilişkilendirerek veri alışverişi yapmasını istersek DataField özelliği kullanılır:

Text1.DataField = "ADI "
Set Text1.DataSource = ADODC1

Aşağıdaki örnekte DataGrid kontrolü ile Access veritabanındaki veriler bir gride bağlanır.

Bu işlem için:

1. Project menüsünden Components komutu kullanılır.
2. Microsoft DataGrid Control 6.0 seçilir. Ayrıca Microsoft ADO Data Control 6.0'ında eklenmiş olması gerekir.
3. OK düğmesine tıklanarak kontrol projeye eklenmiş olur.

Private Sub Command1_Click()

ADODC1.ConnectionString ="Provider=Microsoft.Jet.OLEDB.3.51; Data Source=c:\my documents\adresler.mdb"

ADODC1.CommandType = adCmdTable
ADODC1.RecordSource = "ogrenciler"
Set DataGrid1.DataSource = ADODC1
End Sub

B. ADO NESNELERİ
ADO veri erişim sistemi oldukça basit bir nesne modeline sahiptir. Bu modelde birçok nesne seçimli olarak (birlikte) ya da bağımsız olarak kullanılabilir.

Tablo: ADO modelinde yer alan nesneler

Nesne Amacı

Command Bir veri kaynağı üzerinde bir query ya da deyimi işletir.
Connection Bir veri kaynağına doğrudan bağlantı yaratır.
Error Veri kaynağından bir hatayı döndürür.
Field Bir kayıt içindeki bir alan (kolon).
Parameter Bir komut için parametre tutar.
Recordset Bir komut tarafından üretilen (dönen) verileri içerir.

Örneğin bir Access veritabanına bağlantı kurmak için şu nesneler kullanılır:

Veri: ADRESLER.MDB

Connection: MUSTERI.MDB
Command: Select * from musteriler
Recordset: elde edilen bilgi.

Aşağıdaki örnekte sadece Recordset nesnesi ile bir Microsoft Access veritabanına erişilmektedir:

Dim rst As New ADODB.Recordset
rst.Open "Select * From musteriler", "DSN=MUSTERI", adOpenKeyset
Set DataGrid1.DataSource = rst

NOT: Yukarıdaki kodda yer alan DSN tanımlaması işletim sistemi tarafından yaratılabilir. Control Panel'de ODBC tanımlamalarına bakınız.

1. Recordset Nesnesinin Kullanımı
Aşağıdaki örnekte bir Recordset nesnesi ile Access veritabanındaki veriler DataGrid üzerinde gösterilmektedir:

Dim rst As New ADODB.Recordset
rst.Open "Select * From musteriler", "DSN=MUSTERI", adOpenKeyset
Set DataGrid1.DataSource = rst

2. Connection Nesnesi
Connection nesnesi bir veri kaynağına bağlantı kurmak için kullanılır. Connection nesnesi sayesinde bir data provider aracılığıyla (OLE DB) bir komut işletilir.

Connection nesnesi ile ConnectionString özelliği kullanılır. Bu özellik bağlanılacak veri kaynağını gösterir. Open metodu ise bağlantıyı açmak için kullanılır.

Dim cnn As New ADODB.Connection
cnn.Open "MUSTERI"

3. Command Nesnesi
Command nesnesi bir bağlantı üzerinde işletilecek özel bir query ya da komut yaratmak için kullanılır. Command nesnesinin ana amacı stored procedure'ların ve parametreli komutların çalıştırılmasını sağlamaktır. Bir komut nesnesi bir bağlantı üzerinde bağımsız olarak yaratılır ve işletilmeden önce veri kaynağına bağlı olan aktif connection ile ilişkilendirilir.

Bir komut herhangi bir recordset döndürmeden de kullanılabilir. Örneğin aşağıdaki program parçasında bir UPDATE komutu veritabanı üzerinde işletilmektedir.

strSQL = "UPDATE BORCU SET BORCU = BORCU * 1.15"
cmd.Execute

4. Recordset Nesnesi
Recordset nesnesi ADO içinde en çok kullanılan nesnedir. Recordset nesnesi veri kaynağından gelen verileri içerir. Bir komut ya da query çalıştırıldığında elde edilen kayıtları recordset nesnesi içerir.

Recordset nesneleri genellikle aktif connection ve command ile oluşturulur. Bunun dışında Recordset nesneleri bağımsız olarak da kullanılabilir.

Örnek: Recordset tanımlaması

Dim rst As New ADODB.Recordset

rst.Open "Select * From Ogrenciler", "DSN=ADRESLER",
adOpenKeyset, adLockOptimistic

Örnek: Bir recordset'in DataGrid üzerinde gösterilmesi

Dim con As New ADODB.Connection
Dim rst As New ADODB.Recordset

Con.Open="Provider=Microsoft.Jet.OLEDB.4.0 ; Data Source=c:\data\sirket.mdb"
Rs.Open "SELECT * FROM musteriler", Con
Set DataGrid1.DataSource = rs

NOT: DSN tanımlı olan bağlantılar için bilgisayarda Control Panel üzerinde ODBC bağlantısını tanımlanmalıdır.

II. GÖZDEN GEÇİRME
1. Recordset nedir?
2. Bir recordset nasıl yaratılır?
3. Bir recordset'e ekleme yapmak için hangi metot kullanılır?
4. ADO nesneleri nelerdir?

III. VİSUAL BASIC UYGULAMASI
ER-FA ecza deposu bin kadar üyesine ilaç toptan ilaç pazarlamak üzere kurulmuştur. ER-FA ecza ilaç siparişlerini takip etmek için bir Visual Basic uygulaması geliştirmek istemektedir.

Yapılacak ana işlemler:

. Visual Basic programlama ortamında ana menü ve veri giriş formlarını tasarlamak.
. Veritabanını tasarlamak.
. Veri girişi ve raporlama için kodlar yazmak.

Yapılacak işlemlerin ayrıntıları:

. Visual Basic formu olarak veri giriş formlarını tasarlamak.
. Microsoft Access ya da SQL Server üzerinde veritabanlarını tasarlayın.
. Veri girişi sayfalarında form validation (form alanlarının kontrolü) yapın.
. KAYDET düğmeleriyle verilerin veritabanına kaydını yapın.
. Veritabanı işlemlerini ADO kullanarak yapın.
. İstenen raporlar için Data Environment ve Data Reports bölümlerinden yararlanın.

Sipariş sisteminin yanı sıra bir süre sonra ER-FA ecza deposu müşterileri için bir anket yapmaya karar vermiştir. Anketler de veritabanına bir metin bilgisi olarak eklenecektir. Bu koşullar altında; tabloları ve kayıtların birbiriyle bütünlüğün sağlayacak olan olası ilişkileri tanımlayın.

Bilgiler:
STOK KARTI MUSTERİ KARTI SİPARİŞ ANKET
Kodu Kodu Tarih Kodu
Tanımı Unvanı Sip No Anket Metni
Grup Kodu Grubu Mus Kodu
Satıcı Firma Adresi Stok Kodu
Birimi İlçesi Birimi
Birim Fiyatı İli Adet
KDV Tel Taşıyıcı Firma
Depo Kodu Fax Siparişi Alan
Paket Kodu Vergi Dairesi
Açıklama Vergi No
Resmi Kredisi Hesap Açılış Tarihi
Resmi
Web sitesi

PERSONEL (SİPARİŞİ ALANLAR) TAŞIYICI FİRMA
Kodu Kodu
Adı Soyadı Ünvanı
Adresi Adresi
İli İli
İşe Giriş Tarihi Güzergah

Öncelikle, Microsoft Access ile veritabanını tasarlayın.

Notlar:
. Genellikle kodu alanlarını Primary Key yapın.
. Birim fiyatlar genellikle "Adet" olarak düzenlenecektir. Onu Default yapın.
. Fiyat ve adet bilgilerine mutlaka pozitif bir değer girilecektir.
. Sipariş tarihi "günün" tarihi olarak otomatik olarak düzenlenecektir.
. Grup kodları, iller ve diğer seçenekli girişler bir Combo box olarak düzenlenecektir.

Bu veriler sabit ya da veritabanından gelerek doldurulabilir.

1. Veritabanını Yaratın ve Tabloları Tasarlayın.
Yukarıdaki bilgiler temelinde SIPARIS-TAKIP veritabanını yaratın. Ardından tabloları tasarlayın.

2. İlişkileri Kurun
Kodu alanları PK olduktan sonra ilgili tablolar arasındaki ilişkileri kurun.

Müşteri-Sipariş
Müşteri-Anket
Stok-sipariş
Personel-sipariş
Taşıyıcı firma-sipariş arasındaki ilişkileri kurun.

3. Örnek veriler girin:
Test amaçlı örnek veri girin.

4. Ana Menü Yapın
Programın veri giriş kartlarına yönlenmesini sağlayacak ve ilk olarak çalıştırılacak bir ana menü formu hazırlayın.

Visual Basic projelerinde genellikle menü çubuğu yaparak ana işlemleri onun üzerinde belirtirsiniz.

5. Veri Giriş Formları
Yukarıdaki tablolara veri girişi için Visual Basic formları hazırlayın.
Sayfa başına dön Aşağa gitmek
Kullanıcı profilini gör http://forumtime.fullforums.org
 
Visual Basic öğrenin
Önceki başlık Sonraki başlık Sayfa başına dön 
1 sayfadaki 1 sayfası

Bu forumun müsaadesi var:Bu forumdaki mesajlara cevap veremezsiniz
...::::Tek Link Full Download::::... :: PROGRAMLAMA/WEB TASARIM :: Visual Basic-
Buraya geçin: