Duyurular: 02 Aralık 2008, 03:27:52
Merhaba, Ziyaretçi. Lütfen giriş yapın veya üye olun. *

Visual Basic Nedir ve Temel Dersler!
Sayfa: [1]   Aşağı git
  Yazdır  

  Visual Basic Nedir ve Temel Dersler!
Gönderen Mesaj
faster-_-38
Ziyaretçi
« : 29 Mart 2008, 09:45:44 »

Visual Basic Nedir

Microsoft vb microsoftun gelistirdiği bir yazılım derleyicisidir.Programlamayla biraz olsun ilgilenenlerin hemen hemen hepsi Qbasic hakkinda birşeyler öğrenmiştir.İşte sizin de gözlemleyebileceğiniz gibi,dil gene aynı dil sadece bir iki ekleme var(tabi ole,ado,activex,dll ve daha sayamıyacağim kadar ileri uygulamalar icin kullandiğimiz komutlari saymazsak)ama programın derlendigi alan tamamen görsel,herşeyi mousenizle yapiyorsunuz.Yani programınıza 1 buton koymak,buton simgesi işaretliyken mousenizle çizmeniz kadar kolaydır.Kısaca özetlersek Visual Basic adından da anlaşılacağı gibi Qbasici temel almış ancak ondan çok daha gelişmiş(benzer) dile sahip ileri uygulamalı bir dildir.
Neden Visual Basic

Yukarıda vb'nin ne olduğunu tanımınladıktan sonra bu yazıda neden vb'yi tercih edelim sorusuna yanıt arıyacağız.Vb bir Microsoft ürünüdür.Bu yüzden burada yazacağınız programların databaseleri windowsla tamamen uyumlu olacaktir çünkü aynı firma tarafından destekleniyor,bunun gibi birçok Microsoft ürününü vb ile etkinleştirme imkanımız var örnegin accessde yaptiğiniz basit öğrenci kayıt programını VB'den açıp onu VB'de daha görsel daha gelişmiş hale getirebilirsiniz.Atlanmaması gereken bir ayrıntı da şu: Vb'de program derlemek birçok dile göre daha kolaydır.Çünkü VB'de görsellik ön plandadır ve dil olarak da kolaydır,demek istediğim; komut ezberlemek için çok uğraşmıyorsunuz,biraz ingilizce biliyorsanız işiniz çok kolay; komutlar genelde ingilizce ya da ingilizce kısaltmaları.Şu var ki bazıları bunu abartır ve der ki: "Bilgisayarı yeni açanlar bile vb'de program yazabilir,vb çocuk işidir.." Evet vb'nin kolay olduğunu ben de söylüyorum ama programlama mantığı hep aynıdır,ekran başında kafa çatlatırsınız.Ben de herzaman diyorum, gene en kolayı VB dir ama iş çok sonraki derslerimde anlatacağım dll,actixex.. gibi uygulamalara geldiğinde herkes biraz zorlanır.Dünya üzerinde 3,5 milyonun üzerinde insan VB kullanmakta,ayrica birçok yazılım şirketi de vb bilen yazılımcılar aramakta.Özetliyecek olursak programlamaya yeni başlamışsanız ve gelişmek istiyorsanız şiddetle VB tavsiye ederim,VB yi iyice kaptiktan sonra size delphi veya Microsoft c++ tavsiye ederim...



Visual Basic kuralım

Visual Basic Microsoft’un Visual Studio 6.0 program paketini içinde gelir ve buradan kurulur. İlk önce Visual Studio 6.0 Cd ‘sini CD-Rom ‘a takalım. CD’yi taktıktan sonra kurulum programı otomatik olarak başlayacaktır. Karşımıza ilk önce bir hoş geldin penceresi çikacaktır.
Next’i tıkla¤¤¤¤¤ bir sonraki aşamaya geçelim. Burada bize her Microsoft ürününde olduğu gibi bir anlaşma metni sunulacak bunu ‘I accept the agreement’ seçeneğini işaretleyerek Next düğmesine basarak ilerliyoruz.
Daha sonra bizden kurulumun devam etmesi için gerekli olan kurulum şifresini istiyor.
Gerekli kısımları doldurup Next ‘ e tıklayalım. Karşımıza kurulum tipini seçmemizi isteyen bir ekran çıkar .Burada bize uygun olan kurulum tipini seçtikten sonra Next ‘e tıklayalım.
Sonraki ekranda bize programın yükleneceği yolu belirtmemizi istiyor. Uygun olan bir yol belirtip Next’i tıklayalım.
Nihayet kuruluma başlayabildik. Karşımıza çıkan ekrandan Continue düğmesini tikla¤¤¤¤¤ ilerliyoruz..
Ardından bize Microdofttan destek alabilmemiz için gerekli olan bir numara (Product ID) verecek bunu bir tarafa kaydedebilirsiniz. Tamam düğmesine basıp ilerleyelim. Daha sonra gelecek ekranda ise bize yüklenecek bileşenleri seçmemizi sağlayacak bir ekran gelecek .Custom düğmesini tıkla¤¤¤¤¤ seçimimizi yapalım.
Karşımıza çıkacak ekrandan gerekli bileşenleri seçelim.Bu ekranda Microsft ‘un diğer yazılım geliştirme araçlarını da görebilirsiniz..
Tabii ki biz şu anda Visual Basic ile ilgilendiğimiz için sadece Visual Basic ile alakalı olan şeyleri seçeceğiz.
Continue düğmesini tıklayara kuruluma devam edelim. Kurulum programı gerekli alan için sabit diskimizi tarayacak ve gerekli alan varsa kurulum başlayacaktır.
Bu aşama da bittikten sonra program bizden Windows’u restart etmemizi isteyecek. Programın bir sonraki açılışında düzgün çalışması için Windows’u yeniden başlatalım.
İşte hepsi bu. Şimdi ilk programımızı yazmaya başlayabiliriz. Windows’u yeniden başlattıktan sonra karşımıza MSDN(Microsoft Developer Network Library)’ i yüklemek isteyip istemediğimizi soracak.
Eğer elinizde MSDN CD’leri varsa ‘Install MSDN’ seçeneğini işaretleyerek yükleyebilirsiniz. Eğer bu CD’ler elinizde mevcut değilse Exit deyip MSDN kurulumundan çıkabirsiniz. Sıra geldi Visual Basic’i çalıştırmaya.
Start>Programs>Microsoft Visual Studio 6.0>Microsoft Visual Basic 6.0 yolunu izleyerek Visual Basic’i başlatabiliriz.
Program başlar başlamaz ‘New Project’ başlıklı bir pencere karşımıza çıkar.
Burada yeri gelmişken hatırlatalım. Visual Basic’te programlar Proje olarak saklanırlar ve her program için bir proje adı vermemiz gerekir. Varsayılan proje adı ‘Project 1’dir.Karşımıza çıkan bu ekrandan bize uygun olan proje türünü seçebiliriz. Biz şimdilik standart exe türü projeyi seçeceğiz. Daha sonra yeri geldiğinden diğer proje türlerini de inceleyip hepsinden birer proje yapmaya çalışacağız.
Bu pencerede üç tane sekme mevcut. New, Existing ve Recent. Bir projeye ilk defa başlayacaksak New sekmesi bize uygun bir proje türünü seçerek devam edebiliriz. Eğer mevcut bir projeyi açmak istiyorsak Existing sekmesini tıkla¤¤¤¤¤ mevcut projenin bulunduğu yeri belirtip projeyi açabiliriz. En son sekme olan Recent ise en son üzerinde çalışılan proje en üstte olacak şekilde son çalıştırılan projelerin bir listesini tutar. ‘Standart exe ‘ seçili iken ‘Open ‘ düğmesine basarak yeni bir proje açalım. Yeni açılan bir projede bir tane form bulunur.
Yeri gelmişken bunu da açıklayalım; Visual Basic’teki projeler en az bir tane form içermelidir. Formlar bizim yazdığımız programların kullanıcıya gözüken tarafını oluştururlar. Yani Textbox ,Command Button gibi elemanların yerleştirildiği yerdir formlar. Yeni aaılan ilk projedeki ilk formun adı Form1 olur. Daha sonra kendimiz bu formlara kolayca hatırlayabileceğimiz isimler verebiliriz. Ama isim verirken dikkat etmemiz gereken bazı kurallar var. Mesela bir proje içinde aynı isme sahip iki form olamaz. Ayrıca okunabilirliği artırması hasebiyle formları isimlendirirken form ön ekini getirmek hem iyi bir alışkanlıktır hem de okunabilirliği arttırır. Böylece başka biri tarafından okunabilirlik kurallarına uyularak yazılmış bir kod elinize geçtiğinde kodun hangi elemana ait olduğunu çok kolay bir şekilde anlayabilirsiniz. Yeri geldiğinde bizde programlarımızda bu kurallara azami şekilde uymaya gayret edeceğiz.
Visual Basic editörünün menülerini ve ne işe yaradıklarını geçen sayımızda anlatmıştık. Bu editörün sol tarafında projemizde kullanacağımız kontrollerin bulunduğu bir toolbox mevcut.sağ tarafında ise üç ayrı pencere mevcut. Bunların en üste olan project penceresi projemizde buluna formlar modüller gibi nesnelere ulaşmamızı sağlar. Bu pencerenin altındaki pencere ise aktif kompanentin özelliklerinin bulunduğu ve bu özellikler üzerinde gerekli değişikliklerin yapılabildiği bir pencere olan Properties penceresi. Bu pencerenin altında se formumuzun çalıştığında ekranın neresinde yer alacığı gösteren bir pencere olan ‘Form Layout’ penceresi var.
Şimdi ilk kodumuzu yazmak için formun üzerine iki kez tıklıyoruz. Karşımıza program kodlarınızyazabileceğimiz bir ortam geliyor.
Burada formun üzerine çift tıkladığımız için forma ait bir yordam olan Form_load yordamı karşımıza çıktı. Bu arada yine yeri gelmişken yordam ‘ın ne anlama geldiğini anlatalım. Daha önce Visual Basic de değişik kontrollerin bulunduğundan bahsetmiştik ve Visual Basic’in olay temelli bir programlama aracı olduğunu söylemiştik. Yani yazacağımız bir kod yazıldığı olay yordamı meydana geldiğinde çalışacaktır. Mesela bir formun üzerine mous ‘la tıklandığında ne yapmak istiyorsak bu kodu formun ilgili olayının yord¤¤¤¤¤ yazmalıyız.(Bu örnek için formun click olayı.)Hazır bu örneği vermişken bunu yazmaya başlayalım. Formu çift tıkladığımızda karşımıza çıkan kod penceresinde iki tane combobox (aşağı açılan seçim kutusu , bu kontrolü de ilerde ayrıntılı olarak inceleyeceğiz.) göreceksiniz. Sol taraftaki combobox ‘da o anki aktif formda mevcut bulunan nesnelerin, ismini sağ tarafta ise seçilen bu nesneye uygulanabilecek olayları görebiliriz. Şimdi formun üzerine tek tıklama durumunda bize bir mesaj veren bir program yazalım. Formun kod yazma penceresinde sağ tarafta listelenen olaylardan Click olayını seçelim.
Ardından bize mesaj verecek fonksiyonu bu yordamın içine yazalım. Bu kodu yazarken Visual Basic ‘in çok güzel bir özelliğiyle daha tanışmış olacaksınız. Ekrana mesaj yazmamızı sağlayan Msgbox fonksiyonunu yazdıktan sonra bu fonksiyona hangi parametrelerin girilmesi gerektiğini Visual Basic anla¤¤¤¤¤ bize gösteriyor. Böylece bizim kodu yanlış yazmamızı önlüyor.
Neyse kaldığımız yerden devam edelim. Aşağıdaki kodu formun Click yordamina yazılım;
Private Sub Form_Click()
MsgBox "Tebrikler... Ilk Programınız Basariyla Çalisiyor ", vbOKOnly, "<<<<>>>>"
End Sub Bu kodu yazdıktan sonra ya klavyedeki F5 tuşuna yada Visual Basic editöründeki Run menüsünden Start komutunu vererek ilk projemizi çalıştıralım. Her şey yolunda gidiyorsa karşımıza şöyle bir şekil çıkmalı.
Tebrikler ilk programımızı böylece yazmış olduk. Sıra geldi çalışan bir programı sonlandırmaya .Bunun için de yine Run menüsünden End komutunu vererek yada toolbar ‘daki end düğmesine tıkla¤¤¤¤¤ sonlandırabiliriz.
Bir sonraki sayıda projelerimizin olmazsa olmazı olan formların bütün özelliklerini inceleyerek bu özellikleri örnekler üzerinde deneyeceğiz. Bir sonraki yazıda görüşmek dileğiyle..

Visual Basic'e giriş


Visual Basic hakkında internetde sayısız doküman bulabilirsiniz. Hatta birazda ingilizceniz varsa bu kaynakların sayısının çok daha fazla artacağından emin olabilirsiniz. Ama bizim buradaki amacımız hiç Visual Basic bilgisi olmayan birinin dahi çok rahat bir şekilde anlayabileceği , tamamen bir kurs mantığıyla işlenecek ve aylık takip edilen bir ders olarak algılanacak bir yapıyı oluşturmak. Bu yüzden burada bulacağınız dökümanlar tamamen bir ders planına uyularak anlatılacak .Yani internetteki diğer kaynaklardan farklı olarak bir plan doğrultusunda her ay bir konu işlenecek ve bu konuyla alakalı örnekler anlatımlı olarak verilecektir. Ben yerinizde olsaydım bu derginin çıkacağı günü sabırsızlıkla beklerdim yani her ayın 25’i.Neyse birazda Visual Basic’ den ve bu programla neler yapabileceğimizden bahsedelim.
Herşeyden önce Visual Basic bir programlama dilidir. Yani bu programı kullanarak iki sayıyı toplayan veya çarpan bir programda yazabilirsiniz, çok büyük bir database kullanan kurumlar arası ve internet üzerinden çalışan bir programda yazabilirsiniz. Tabii ki bunu belirleyen en büyük unsur sizin bilgi ve becerileriniz. Kendi IRC programınızdan tutunda kendi Web Browser’ınıza kadar, MS Access veritabanını kullanan bir programdan tutunda çok karmaşık ilişkilerle düzenlenmiş bir Oracle veritabanını kullanan bir programda yazabilirsiniz. Ayrıca Visual Basic diğer Microsoft ürünleriyle son derece uyumludur.Bu da bize çok büyük bir avantaj sağlar. Böylece siz bir Exchange formunu da Visual Basic kullanarak oluşturabilirsiniz veya bir MS SQL Server’daki datalarada yapmış olduğunuz programla ulaşıp,bu datalar üzerinde değişiklik yapabilir,yeni datalar girebilir ,girilen dataları silebilirsiniz.
Visual Basic nesneye dayalı (Object-Oriented) bir programlama dilidir. Yani program içinde kullanılan nesneler önceden hazırlanmış bir şekilde programı yazan kullanıcının hizmetine sunulur. Bu nesnelerin en basit örneği command button dediğimiz nesnedir.(Hani Windows’ da bir dosyayı silmek istediğimizde bize sorduğu sorunun altındaki evet ve hayır buttonları var ya işte onlar. ;-). Biz Visual Basic kullanarak kendimize özel nesneler de yapabiliriz. Bu bizim işimize ne zaman yarar? Diyelim ki Visual Basic’ in bize sunmuş olduğu standart nesneler bizim işimizi tam olarak görmüyor. O zaman bizde oturur kendi nesnemizi kendimiz yazarız. Ayrıca işleri sadece bu nesneleri yazmak olan firmalarda mevcut. Bunların tasarlamış olduğu nesneleri de kendi programımızda kullanabiliriz. Bu firmalar yazmış oldukları nesneleri ya belirli bir ücret karşılığında satmakta yada freeware veya shareware olarak internet üzerinden dağıtmaktadırlar. Mesela Download.com adresinde ki ActiveX ‘ler bu türden nesnelerin download edilebildiği bir adres.Ayrıca internetteki arama motorlarında Activex yada ocx yazarak bu tür nesnelere kolay bir şekilde ulaşabilirsiniz.
Visual Basic, olay temelli bir programlama aracıdır. Peki olay temelli (event-driven) ne anlama geliyor? Programınız kullanıcının yapmış olduğu işlemlere göre yanıt veriyor. Mesela bir formun üzerindeki bir button’ a tıklanması bir olaydır ve siz bu olaya ait ve sadece bu olayın meydana gelmesi sırasında çalışacak bir kod yazarsınız ve bu kod sadece o olay meydana geldiğinde çalışır. Genelde bir nesneye ait birden fazla olay tanımlanmıştır. Bu olayları her bir nesneyi incelerken ayrı ayrı anlatmaya çalışacağız.
Şimdi de sıra Visual Basic’in kurulumuna geldi.Biz kodlarımızı Visual Basic ‘in son versiyonu olan Visual Basic 6.0 kullanarak yazacağız. Ama yazacağımız kodlarımızı 5.0 , hatta 4.0 da bile çalışacak şekilde yazacağız. Malum herkeste son versiyon olmayabilir. Visual Basic 6.0 ‘ın kurulacağı bir makinada olması gereken minimun konfigürasyona gelince;
İşletim sistemi: Win 95, Win 98, Win NT 4.0, Win 2000
İşlemci: 80486 veya daha üstü bir microişlemci
Harddisk Alanı: Minimun 50 MB
Ekran kartı: VGA yada daha yüksek çözünürlüğü destekleyen bir ekran kartı
RAM:16 MB RAM
Tabii ki yukarıdaki konfigürasyon Visual Basic ‘in kurulması için gerekli minimum konfigürasyon.(Bir programcı olmaya karar verdiyseniz konfigürasyonunuzu mümkün olduğunca yüksek tutmanız sizin açınızdan iyi olacaktır. Mesela bir PII bilgisayar ve 64 RAM )
Birazda Visual Basic’teki proje ve formlardan bahsedelim. Yeni bir Visual Basic progr¤¤¤¤¤ bir proje olarak başlanır. Varsayılan proje türü standart EXE’ dir. Eğer exe haricinde bir proje üzerinde çalışmak istersek mesela yukarıda bahsettiğimiz bir ocx projesi üzerinde çalışmak istiyorsak bunu yeni proje sayfasından seçebiliriz.Proje penceresiyle birlikte bir form ekrana gelir. Projenin başlangıç adı Project1, formun başlangıç adı ise Form1’dir. Her Visual Basic uygulamasında en az 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 kullanıcı arabirimini oluşturur.Yani kullanıcını birebir muhatap olduğu kısım bu formlardır.Visual Basic kontrollerinden istenilen kontroller form üzerine fare ile yerleştirilerek uygulamanın arabirimi oluşturulur. 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.
Visual Basic’in araç kutusuna gelince, aşağıda bu araç kutusunda bulunan standart kontrolleri ve ne işe yaradıklarını bulabilirsiniz;
PictureBox Resim kutusu Bitmap, Icon, GIF resimlerin gösterilmesini sağlar. Label Etiket Sadece bilgi vermek yada 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. Command Button Komut düğmesi. Bir işlemin başlatılmasını sağlar. Genellikle fare ü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.x ListBox 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ı listeler. Shape Şekil. Şekil çizmeyi sağlar. Line Çizgi. Ç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
File Menüsü
New Project Yeni bir projeye başlamayı sağlar. Open Project Daha önce kaydedilmiş bir projeyi açar. Add Project Mevcut projeye yeni projeler ekler. Remove Project Projeyi ve elemanlarını ortadan kaldırır. Save Project Group Projeleri grup kayıt eder. Save Project Group As Projelere yeni ad vererek kaydeder. Save Form1 Aktif durumdaki formu kaydeder. Save Form1 As Aktif durumdaki formu değişik adla kaydeder. Save Selection Seçili kaydet. Save Chance Script Transact-SQL deyimlerinin kayıt edilmesini sağlar. Print Form görüntülerinin veya kod sayfalarının yazdırılmasını sağlar. Print Setup Yazıcı ayarları. Make Project1.exe Projenin EXE dosyası haline getirilmesini sağlar. Make Project Group Projeleri bir grup olarak birleştirir. Exit Visual Basic’ten çıkış.

Edit Menüsü
Undo Son yapılan işlemi geri alır. Redo Geri alınan son işlemi tekrarlar. Cut Seçili olanları keserek panoya atar. Copy Seçili olanları kopyala¤¤¤¤¤ panoya atar. Paste Daha önce kesilmiş yada kopyalanmış olanları yapıştırır. Paste Link Daha önce kopyalanmış olanları bağlantılarını oluşturur. Remove Seçilen elemanları siler. Delete Seçilen elemanları siler. Delete table from Database Tabloyu veritabanından siler. Select All Form üzerindeki yada kod penceresindeki bütün elemanlar seçilir. Select All Columns Bütün kolonları seçer. Table Tablo komutlarını gösteren bir alt mönü. Find Kod penceresinde istenilen bilgiyi bulur. Find Next Bir sonrakini bulur. Replace Bulunan bir sözcüğü değiştirmeyi sağlar. Indent Satırı içerden başlatır. Outdent Dışarı alır. Insert File Koda bir dosyadan ekleme sağlar List properties / Methods Yazılan nesnelerin özelliklerinin açılan bir liste olarak ekrana getirilmesini sağlar. List Constants Bir özelliğin alacağı değerleri listeler. Quick Info Bir deyimin kullanım biçimini gösterir. Parameter Info Bir deyimin parametrelerini gösterir.
View Menüsü
Code Kod penceresini görüntüler. Object Formu görüntüler. Definition Kod. Last Position Bir önceki konuma gidilmesini sağlar. Object Browser Mevcut proje yada Visual Basic nesnelerinin seçilmesini sağlayan görsel yardımcı. Immediate Window Programın kesilmesi yada hata bulunduğunda (Debug durumunda) istenilen değişkenlerin değerlerinin izlenebildiği pencere. Locals Window Yine debug durumunda yerel değişkenlerin değerlerinin izlenmesini sağlar Watch Window Bir ifadenin durumunun izlenmesini sağlar. Call Stacks Çağırılmış ama tamamlanmamış procedure’leri gösterir. Project Explorer Proje içinde yer alan elemanlar görüntülenir. Properties Window Özellikler penceresi görüntülenir. Form Layout Window Formun ekrandaki görüntüsünü gösterir. Property Pages Özellikler tablosunu gösterir. Table Veritabanı, query gibi ortamlarda seçilen penceresinin açılıp kapanmasını sağlar. Zoom Büyütme Show Panes Bölümleri göster. Toolbox Araç kutusunun görüntülenmesi / görüntülenmemesi sağlanır. Data View Window Veri Bakış Penceresi Color Palette Form üzerinde renklendirme yapmak için kullanılan renk paleti ekrana gelir. Toolbars Araç çubuklarının görüntülenmesi için kullanılır. Visual Component Manager Görsel Bileşen Yönetimi
Project Menüsü
Add Form Projeye yeni bir form ekler. Add MDI Form Projeye yeni bir MDI form ekler. Add Module Projeye yeni bir modül ekler. Add Class Module Projeye yeni bir modul ekler. Add User Control Projeye yeni bir kullanıcı kontrolü ekler. Add Property Page Projeye yeni bir user document ekler. Add User Document Projeye yeni bir property ekler. Add ActiveX Desingner Projeye yeni bir ActiveX Designer ekler. Add File Projeye dosya ekler. Remove <form> İstenilen eleman kaldırılır. References Çeşitli kütüphanelerin yüklenmesi sağlanır. Components Araç kutusuna eklenecek bileşenleri gösterir. <Proje> Properties Projenin özellikleri düzenlenir.
Format Menüsü
Align Form üzerindeki birden çok elemanın birbirine hizalanmasını sağlar. Make Same Size Form üzerindeki birden çok elemanın birbirine göre aynı boyuta getirilmesini sağlar. Size to Grid Form üzerindeki elemanların form üzerindeki ızgaraya göre boyutlarını ayarlar. Horizontal Spacing Form üzerinde birden çok eleman arasındaki yatay boşluğu ayarlamak için kullanılır. Vertical Spacing Form üzerinde birden çok eleman arasındaki dikey boşluğu ayarlamak için kullanılır. Center in Form Form üzerindeki elemanların forma dikey yada yatay olarak ortalanmasını sağlar. Order Form üzerinde üst üste duran elemanların sırasını belirler. Lock Controls Form üzerindeki elemanların kilitlenerek yerlerinin oynamamasını sağlar.
Debug Menüsü
Step Into Programın satır satır çalışmasını sağlar. F8 tuşu. Step Over Programın procedure olarak çalışmasını sağlar. Step Out Programın Run to Cursor Programı bulunulan satıra kadar çalıştırır. Add Watch Program çalışırken değişkenlerin değerlerini kayıt eder ve izlenmesini sağlar. Edit Watch İstenilen izleme satırını düzenler. Quick Watch Değişkenlerin seçildikleri andaki değerleri görüntülenir. Toggle Breakpoint Bir satıra kesme noktası işareti vererek programın bu satıra durması sağlanır. Clear All Breakpoints Bütün kesme noktalarını kaldırır. Set Next Statements Bir sonraki Statement’ı kurar. Show Next Statements Bir sonraki Statement’ı gösterir.
Run Menüsü
Start Programı çalıştırır. F5 tuşu. Start With ¤¤¤¤ Compile Programı derler / çalıştırır. Break Programı keser. End Programı sonlandırır. Restart Programı yeniden başlatır.
Query Menüsü
Run Sorguyu çalıştırır. Clear Results Sorguyu temizler. Verify SQL Syntax SQL deyimini denetler. Group By Guruplar. Change Type Sorgu tipini değiştirir. Add to Output Seçilen kolonu giriş bilgisine ekler. Sort Ascending Artan sırada sıralar. Sort Descending Azalan sırada sıralar. Remove Filter Filtreyi kaldırır. Select All Rows From Bütün satırları seçer.
Diagram Menüsü
New Text Annotation Metin açıklama ekler. Set Text Font Metin yazı tiplerini düzenler. Add related Tables İlişkili tablolar ekler Show Relationship Labels İlişki etiketlerini ekler. Modify Custom View Özel görünümü değiştirir. View Pages Breaks Sayfa aralarını (sonlarını) göster. Recalculate Page Breaks Sayfa aralarını (sonlarını) yeniden hesaplar. Arrange Selection Yeniden düzenler. Arrange Tables Tabloları düzenler. Autosize Selected Tables Tabloları yeniden boyutlandırır.
Tools Menüsü
Add Procedure Kod penceresinde yeni bir prodecure yaratmak için kullanılır. Procedure Attribute Özellik ve metotları düzenler. Menu Editör Bir mönüyü tasarlayan iletişim kutusu. Options Visual Basic ortamını düzenlemek için kullanılır.
Add-Ins Menüsü

Visual Data Manager Veritabanı düzenleme aracı. Add-In Manager Ek programları ekleme/kaldırma.
Window Menüsü

Tile Horizontally Yatay döşeme. Tile Vertical Dikey döşeme. Cascade Basamaklama. Arrange Icons
Help Menüsü
Contents İçerikler. Indx İndeks. Search Arama. Technical Support Teknik destek seçenekleri. Microsoft on the Web Microsoft ‘un Web sitesine bağlantı. About Microsoft Visual Basic. Visual Basic programınız hakkında bilgiler Açılış Penceresi

Visual Basic'i ilk açtığınızda bu pencere karşınıza çıkacaktır.Burada Standart EXE açılışta seçili haldedir.Bizim de şimdilik üzerinde çalışacağımız kısım da burası zaten.Diğer kısımlar haftalar sonraki derslerimizde işimize yarıyacak.Şimdi bizim yapmamız gereken Standart Exe seçili haldeyken "aç" butonunu tıklamaktır.
Visual Basic Ekranı

Form Penceresi:Açılışta üzerinde hiçbirşey yoktur,daha sonra yazacağınız programda kontrol elemanlarını(buton,text kutusu,resim kutusu vb.)üzerinde barındıracak olan penceredir.Kontrol elemanları formun üzerine yerleştirilir,Formlar da birleşerek programı oluşturur(1 programda tek form veya daha fazla form olabilir,çok formlu uygulamaları sonraki derslerde göreceğiz)
Tool Box Penceresi:Formun üzerine yerleştireceğimiz kontrol lelemanlarını(buton,text kutusu,combobox,resim kutusu vb..)üzerinde bulunduran penceredir.Bu penceredeki araçların fonksiyonlarını teker teker birdahaki derste göstereceğim
Form Explorer Penceresi:Bu pencere sayesinde programımızdaki form,modul vb. arasında geçiş yaapabiliriz.Bu pencerenin en üstünde 3 tane buton var,bu butonlardan en soldaki kod penceresini(kod yazacağımız pencereyi),onun yanındaki buton ise tasarım penceresini(programımızın görünümünü düzenlediğimiz,toolboxtaki kontrol elemanlarını mousemiz yardımıyla formun üzerine yerlestirtidiğimiz pencere)penceredir.En sondaki pencere ise form ve modulleri tek bir dosya halinde veya açık bir şekilde görmemizi sağlar.
Properties Penceresi:Bu pencere sayesinde kontrol elemanlarının( buton, text kutusu,resim kutusu vb.) özelliklerini ayarlayabiliriz.Kontrol elemanlarını ayrı ayrı incelediğimizde bu pencereyi ayrıntılı bir şekilde öğrenmiş olacağız.Ama benden tavsiye şimdiden formun üstüne rastgele buton felan koyun,properties penceresinden özelliklerini felan değiştirin,bence en güzel öğrenme yöntemidir deneme-yanılma.
Form Layout Penceresi:Bu pencere üzerindeki kısmı, mouseniz yardımıyla kaydırabilirsiniz.Bu pencere ,programınızı F5 diyerek çalıştırdığınızda, form veya formlarınızın monitörde açılacağı konumun ayarını yapabileceğiniz penceredir.
Tool Box penceresi önemli ve detaylı olduğu için birdahaki yazıda bu pencereyi inceleyeceğiz..
Logged

faster-_-38
Ziyaretçi
« Yanıtla #1 : 29 Mart 2008, 09:48:02 »

B'de Tool Box


Aşağıda tanıtacağım tool(alet) lar Visual Basic'in solunda bulunan ToolBox'in üzerindeki elemanlardır.Bunlardan kısaca bahsettim ama herzaman dediğim gibi en iyi öğrenme yolu deneme-yanılmadır.Teker teker deneyin inceleyin. Kolay Gelsin...
IMLEÇ: Form üzerine yerleştirilmiş kontrol nesnelerinin yerini ve boyutunu degiştirmek için kullanılır.
PICTURE BOX (Resim Kutusu): Form üzerinde resimleri göstermek ,diskten form'a resim yüklemek için kullanılır.
LABEL (Etiket): Bilgi vermek ya da başlık koymak amacıyla kullanılan alet.
TEXT BOX (Metin Kutusu): Bilgi girişi veya üretilen bilgilerin gösterilmesi için kullanılır.
FRAME (Çerçeve): Kontrol veya kontroller için gurup oluşturur.
COMMAND BUTTON (Komut Butonu): Kullanıcının belirli 1 işi yerine getirmesi için onaylama butonudur.
CHECK BOX (Kontrol Kutusu): Kullanıcıya evet/hayir ya da doğru/yanlış gibi seçenekler vermek için kullanilir.
OPTION BUTTON (Opsiyon Butonu): En fazla bir seçeneğin seçilebileceğii durumlarda kullanılır.
COMBO BOX (Kombine Kutu): Metin kutusu gibi içine metin yazılabilinir,liste kutusu gibi istenilen seçilinebilir.
LIST BOX (Liste Kutusu): Kullanıcının, içinden bir veya daha fazla isim seçebileceği bir liste içerir.
HORIZONTAL SCROLL BARS (Yatay Hareket Çubukları): Kullanıcıya, uzun bilgilerde, yatayda hareket imkani saglar.
VERTICAL SCROLL BARS (Düşey Hareket Çubuklari): Kullaniciya uzun bilgilerde, düşeyde hareket imkani sağlar.
TIMER (Zamanlayıcı): Formun çalıştığı sırada, zamana bağlı olarak belirli aralıklarla ,eylemlerin gerçekleşmesini denetler.
DRIVE LIST BOX (Sürücü Listeleme Kutusu): Geçerli sürücülerin bir listesini göstermeye yarar.Aynı zamanda sürücüler arası geçiş'te kullanılır.
DIRECTORY LIST BOX (Dizin Listeleme Kutusu): Sürücülerin yolunu ve dizinlerini görüntüler.
FILE LIST BOX (Dosya Listeleme kutusu): Verilen bir dizin içindeki tüm dosyaları listeler.
SHAPE (Sekil): Form üzerine geometrik şekiller çizmek için kullanılır.
LINE (Çizgi): Form üzerine çizgi çizmek için kullanılır.
IMAGE (Görüntü): Resim kutusu gibi bir resmi gösterir.Bilgisayarı; daha az yorar.Mousela tiklandigi zaman command buton gibi davranır.
DATA ACCESS (Veriye Erişim): Sistemdeki mevcut veri tabanına erişerek, bilgi güncelleme ,edit yada bilgi görüntüleme işlemlerinin yapilabilmesine olanak sağlar.
OLE CLIENT (Ole Istemcisi): Bu tool ile form içine bir Windows programından ( Access,Excel gibi ) nesneler aktarmak mümkün.

Visual Basic' te Formlar


Bu yazıda Visual Basic'in olmazsa olmazı olan ve her programda mutlaka bir tane olması gereken formlar ve bu formların özellikleri üzerinde duracağız.
Visual Basic' te iki çeşit form vardır. Bunlardan bir tanesi tek başına çalışan form türü olan Visual Basic ilk çalıştığı zaman ekrana gelen form ve projeye her eklenen yeni formun türü olan SDI (Single Document Interface) formlarıdır. Bu tür formların içinde başka formlar çalışamazlar. İkinci tür form çeşidi ise içerisinde başka formların çalışmasına izin veren ve MDI (Multi Document Interface) olarak bilinen form türüdür.Bu tür formların içinde Child form olarak adlandırılan ve normal SDI formların Child özelliğinin true yapılmasıyla oluşan formlar çalıştırılabilir. Aşağıdaki birince resimde örnek bir SDI form , ikinci resimde ise örnek bir MDI form ve bu formun içindeki Child formları görebilirsiniz.


SDI form örneği


MDI form örneği
Şimdi sıra geldi formların özelliklerine. Bu özellikleri sırasıyla ele alalım.
Caption: Formun başlığına yazılacak yazıyı belirtir.Bu özelliğe formun properties penceresinden ulaşılabileceği gibi kod kullanarak da formun başlığı değiştirilebilir.


Icon : Formda kullanılacak iconu belirtir. Bu icon programınıza ait bir kısayol oluşturduğunuzda gözükecek icondur aynı zamanda.


3-FixedDouble :Kullanıcı formu boyutlandıramaz ama formu taşıyabilir ve formu kapatabilir.
4-FixedToolWindow :Normal forma göre başlığı daha küçük olan ve kontrol menüsü içermeyen bir form oluşturur.Bu formun boyutları kullanıcı tarafından değiştirilemez.
5-SizableToolWindow :Yukarıdaki forma benzer terk farkı boyutları kullanıcı tarafından değiştirilebilir.
MaxButton, MinButton : Formun sağ üst köşesinde bulunan ve formun büyültülüp küçültülmesi işlemleri için kullanılan düğmelerin formda bulunup bulunmamasını belirler.
ControlBox : Formun sol üst köşesinde bulunan kontrol menüsünün görünüp görünmemesini sağlar.Bu değer true veya false değerlerini alabilir.Eğer bu değer true ise kontrol menüsü görünür ve bu form Alt+F4 tuş kombinasyonu kullanılarak kapatılabilir.
Moveable : Bu özellik ile kullanıcının formu taşıyıp taşıyamayacağı belirlenir.Bu özellik true veya false değerini alabilir.Eğer bu değer true ise kullanıcı formu taşıyabilir.
ShowInTaskbar : Bu özellik formun çalışma esnasında görev çubuğunda görünüp görünmeyeceğini belirler.True yada false değerlerini alabilir.Eğer bu özellik true ise program çalıştığında form görev çubuğunda görünür.
AutoRedraw : Bu özellik ile formun üzerine başka bir form geldiğinde veya formun boyutlarıyla oynandığında formun üzerindeki yazı veya çizimlerin yenilenip yenilenmeyeceği belirlenir.Bu özellik true veya false olmak üzere iki değer alabilir. Eğer bu değer true ise formda yenileme yapılır ve formun üzerindeki yazı ve çizimler kaybolmaz.
FontTransparent : Formun üzerine Print metodu ile yazılan yazıların zemin renginin olup olmamasını belirler. Bu özellik true yada false olabilir.Eğer true ise yazıların zemin rengi olmayacaktır. False ise yazı kandı zemin rengi üzerine yazılır ve altındaki nesneyi göstermez.
WindowState : Formun ilk çalışmaya başlayacağı zaman alacağı durumu belirler.Bu özellik üç değer alabilir.
0-Normal :Normal durumda açılır.
1-Minimized :Simge durumunda açılır.
2-Maximized :Ekranın tamamını kaplayacak şekilde açılır.
StartupPosition : Formun yüklenmeye başlandığı zaman ekran koordinatlarının neye göre belirleneceğini belirler.bu özellik dört farklı değer alabilir.
0-Manuel :Form tasarlandığı zamanki konumda açılır.
1-CenterOwner : Child özelliği true yapılmış formların MDI formun ortasında açılmasını sağlar.
2-CenterScreen :Formun ekranın ortasında açılmasını sağlar.
3-WindowsDefault :Formun konumunu Windows belirler.
KeyPreview : Form aktifken basılan tuşlardan formun etkilenip etkilenmeyeceği bu özellik kullanılarak ayarlanılır.Bu özellik iki değer alabilir.Eğer değer true ise formda bulunan herhangi bir kontrolün üzerinde basılan tuşlar ilk önce formun KeyPress , Keydown ,KeyUp olaylarını meydana getirir.Bu değer false ise kontrolün üzerinde basılan tuşlar o kontrolün KeyPress , Keydown , KeyUp olaylarını meydana getirir.
Count : Formdaki menüler dahil kontrol sayısını belirtir. Picture : Formun üzerinde gösterilecek resmi belirtir.
MDIChild : Yukarıda bahsettiğimiz MDI formların içinde çalışabilen bir form istiyorsak bu özelliği true yapmamız gerekiyor.
CurrentX, CurrentY : Formun üzerindeki aktif pixelin yerini belirtir. Formun üzerine yazdırılacak yazılar bu noktadan başla¤¤¤¤¤ yazdırılır.
Width : Formun genişliğinin belirlendiği özellik. Heigth : Formun yüksekliğinin belirlendiği özellik.
Left : Formun ekranın ne kadar solunda olacağının belirlendiği özellik.
Top : Formun ekranın ne kadar üstünde yer olacağının belirlendiği özellik.
Font : Formlara yazılacak yazıların fontlarının belirlendiği özellik.
BackColor: Formun zemin renginin belirlendiği özellik.
ScaleMode : Formda kullanılan ölçü birimini belirtir.Varsayılan ölçü birimi Twip'dir.Kullanılabilecek ölçü birimleri ise;
1- Twip
2- Point
3- Pixel
4- Character
5- Inch
6- Millimeter
7- Centimeter
MousePointer: Form üzerindeki fare işaretçisinin şeklini belirler.
Enabled : Formların kullanılabir olup olmamasının belirlendiği özellik.Eğer bu özellik bir form için false ise o form proje içerisinde kullanılamaz.
Bu yazımızda formların genel özelliklerine değindik. Bir sonraki yazımızda formlara uygulanabilecek olayları inceleyeceğiz.

Visual Basic 'de formlara uygulanabilecekler


Bu yazımızda sizlerle birlikte Visual Basic 'de formlara uygulanabilecek olayları inceleyeceğiz. Bildiğimiz gibi Visual Basic olay temelli bir programa aracı olup, kullanılan kontroller için önceden tanımlanmış olaylara ilişkin kodlar yazılarak programın çalışması sağlanır. Örneğin siz ,formun üzerine çift tıklanması durumunda bir olayın meydana gelmesini istiyorsunuz. Bunun için formda tanımlanmış DblClick olayına ilgili kodu yazarak bu olayın meydana gelmesini sağlayabilirsiniz. Şimdi sırasıyla formlara uygulanabilecek olayları inceleyelim.
Load() : Formun ilk defa hafızaya yüklendiği zaman meydana gelen olaydır.Bu olay kullanılarak ,kullanıcıya formu göstermeden önce yapılması gereken işler yapılabilir. Örneğin ,kullanıcı programı başlattığında ilk önce kullanıcıdan,kullanıcı adı ve şifresini alarak daha sonra yüklenecek ana formda bu bilgileri kullanarak bir veritabanına bağlantı sağlayabiliriz.
Activate() : Formun ,programda aktif olması sırasında meydana gelir. Eğer programımızda bir tane form varsa bu form her zaman aktiftir. Bu olaya ,formun aktif olması sırasında yapılmasını istediğimiz olayları yazabiliriz.
Deactivate() : Formun , programda aktivitesini kaybetmesi sırasında meydana gelen olaydır. Bu olaya ,formun aktivitesini kaybetmesi sırasında yapılmasını istediğimiz olayları yazabiliriz.
Unload(Cancel As Integer) : Formun kapatılması sırasında meydana gelen olaydır. Ayrıca bu olayda tanımlanmış Cancel değişkenini kullanarak sadece bizim istediğimiz durumda formun kapanmasını sağlayabiliriz. Bunu gerçekleştirmek için ,yani formun kullanıcı tarafından hiçbir şekilde kapatılmaması için Cancel değişkenine True değerini atamalıyız. Aşağıdaki örnekte kullanıcı formu kapatmak istediği zaman bir pencereyle(inputbox) karşılaşıyor ve bir değer girmesi isteniyor. Eğer girdiği değer 2 ve 2'den büyükse form kapanmıyor.


Private Sub Form_Unload(Cancel As Integer)
Dim c
c = InputBox("Formu kapatmak için bir sayi giriniz", "Çikis")
If c > 2 Then
Cancel = True
Else
Cancel = False
End If
End Sub

Not : Bu olay formun End komutuyla sonlandırılması sırasında meydana gelmez. Yani bu olayın meydana gelebilmesi için formun program tarafından End komutu kullanılarak sonlandırılmaması gerekir.
Yukarıdaki programı çalıştırdığınızda aşağıdakine benzer bir ekranla karşılaşmalısınız.



Resize() : Formun boyutlarının değiştirilmesi sırasında meydana gelir.Örneğin formun genişliğinin veya yüksekliğinin değiştirilmesi bu olayın meydana gelmesini sağlar.
KeyPress(KeyAscii As Integer) : Formun çalışması sırasında yön ve kontrol(Ctrl,Alt,Shift) tuşları dışında herhangi bir tuşa basılması sırasında meydana gelen olaydır. Bu olayda basılan tuşun Ascii değeri KeyAscii değişkenine atanır. Bu değişkeni kullanarak hangi tuşa basıldığını öğrenebilirsiniz. Aşağıdaki program, formun çalışması sırasında hangi tuşa basıldığını ekrana yazar.


Private Sub Form_KeyPress(KeyAscii As Integer)
Show
Print Chr(KeyAscii) & " tusuna bastiniz."
End Sub



KeyDown(KeyCode As Integer, Shift As Integer) : Bu olay herhangi bir tuşa basıldığı anda meydana gelir. Bu olayda iki parametre kullanılır.Bu parametrelerin biri basılan tuşun Ascii değerini , diğeri ise bu tuşla birlikte Shift,Ctrl ve Alt tuşlarından herhangi birine basılıp basılmadığı konusunda bilgi tutar. Aşağıdaki tabloda Shift parametresinin alabileceği değerler ve açıklamalarını bulabilirsiniz.
Shift
Parametresinin Değeri Açıklama
0
Shift ,Ctrl ,Alt tuşlarından herhangi birisi basılı durumda değil.
1
Shift tuşu basılı durumda.
2
Ctrl tuşu basılı durumda.
3
Shift ve Ctrl tuşları basılı durumda.
4
Alt tuşu basılı durumda.
5
Shift ve Alt tuşları basılı durumda.
6
Ctrl ve Alt tuşları basılı durumda.
7
Shift ,Ctrl ve Alt tuşları basılı durumda. Aşağıdaki örnekte kullanıcı Ctrl tuşu ile birlikte A tuşuna basarsa kullanıcıya mesaj verecektir.



Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = 65 And Shift = 2 Then
MsgBox "Ctrl+A tus kombinasyonunu kullandiniz."
End If
End Sub




KeyUp(KeyCode As Integer, Shift As Integer) : Bu olay ise kullanıcının bastığı tuşu bırakması sırasında meydana gelir. Yukarıdaki tabloda Shift parametresi için gösterilen değerler bu olayda da geçerlidir.
MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) : Bu olay formun üzerinde mouse'un herhangi bir tuşuna basılması sırasında meydana gelir. Bu olayda kullanılan parametrelerden Button parametresi,kullanıcını mouse'un hangi tuşuna bastığı bilgisine tutar ve kullanıcı mouse'un sol tuşuna basmışsa 1,sağ tuşuna basmışsa 2,her iki tuşa birlikte basmışsa 3 değerini alır. İkinci parametre olan Shift ise mouse'un tuşlarına basıldığı sırada herhangi bir kontrol karakterine basılıp basılmadığı bilgisini tutar ve yukarıdaki tabloda açıklanan değerler bu olaydaki Shift parametresi için de geçerlidir.X ve Y parametreleri ise bu olayının meydana geldiği andaki mouse işaretçisinin yerinin Twip cinsinden değerlerini tutarlar. Aşağıdaki örnekte mouse'un sol tuşuna tıklandığı yerin Twip olarak değeri kullanıcıya mesaj olarak gösteriliyor.


Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = 1 Then
MsgBox ("Mouse'un yeri :" & Str(X) & "," & Str(Y))
End If
End Sub



MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) : Bu olay kullanıcını mouse'un bastığı tuşunu serbest bırakması sırasında meydana gelir ve kullanılan parametreler MouseDown olayındakilerle aynıdır.
MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) : Bu olay mouse işaretçisinin form üzerindeki yerinin değişmesi sırasında meydana gelir ve kullanılan parametreler MouseDown olayındakilerle aynıdır.
Click() : Bu olay mouse ile formun herhangi bir yerine tek tıklama yapıldığında meydana gelir.
DblClick() : Bu olay mouse ile formun herhangi bir yerine üst üste iki tıklama yapıldığında meydana gelir. Aşağıdaki programda kullanıcıya, formun herhangi bir yerine çift tıklaması durumunda bir mesaj gösterilecektir.



Private Sub Form_DblClick()
MsgBox "Mouse ile Çift Tıklama Yaptiniz.", , "Çift Tiklama"
End Sub

VB'de Veri Yapıları ve Tanımlama


Programlamanın temelini oluşturacak bu konuyu anlamadan geçmemeliyiz. Degişkenler bizim elimiz ayağımız olcacak.O yüzden dikkat!!
1-)Sabitler(Constants)

Programın içinde değeri değişmeyen sabitlerdir.VB'de hazır bu tip değilşkenler olduğu gibi programı yazarken kendi ellerimizle de tanımlayabiliriz.
<>02021013 seklindeki bir sabit bir tamsayı sabittir."MUTASYON" şeklindeki bir sabit ise string türü bir sabittir.String türü ifadeler sayisal işlemlere sokulmazlar.Değişkenleri elimizle tanımlarken,code(yazilimi yazdigimiz pencere)penceresinin general(pencerenin sol köşesindeki listbox'a bak)kisminda olmalıyız.


Bu programı yazdığınızda,command1 butonuna tıkladığınızda text kutusunda bilgisa¤¤¤¤¤ yazacaktır. Gördüğünüz gibi sabit değerleri general kısmında tanımladık.Sabit tanımlamak için mutlaka ihtiyacımız olan şeyler "const" ve sabitin ismi.Hemen aklınıza "o baştaki private ne oluyor?"diye soru gelecektir hemen cevaplıyay&yım Private ifadesini silin programın gene de çalıştığını göreceksiniz,private ve public, değişkenlerin etkili olacağı alanları belirlememizde işe yarar.Çoğu zaman private'yi kullanın çünkü standart.exe olarak açtığınız formlarda public işe yaramaz, hata verir.Ya da hiç birini kullanmayın,simdi ayrıntıyla anlatırsam işin başında kafalar karışır.
2-)Değişkenler

Program içerisinde değerleri sürekli olarak degişebilen veri yapısıdır. x=23 y=12 iken x=x+3 y=x+x dersek x ve y'nin değerlerini 26 ve 38 yaparak degiştirmiş oluruz.Yani bir değişkene yeni bir değer atanırsa eski değeri silinecektir.
a-)Degişkenlere isim verme

    * Degişken isminin ilk karakteri bir harf olmalıdır.Rakam değil.
    * Diğer karakterler harf,isim,karakter,alttan çizgi_ v.s.olabailir.
    * Harflerin küçük yada büyük olmasının bir önemi yoktur.
    * Değişken isimlerinin uzunluklari 255 karaktere kadar olabilir.
    * Değişken isimleri içerisinde diğer semboller (+,-,/, , vb) bulunmamalidir.

b-)Değişken türleri

Bu bölümde,vb'de program yazarken,programınızda kullanabileceğiiniz veri türleri tanıtılacaktır.
variant:

Bu tipte tanımlanmış bir değişkene herhangi bir tip’te veri yüklenebilir.Yani ne tür bir veri gireceğimizi bilmediğimiz degişkenlerde Variant kullanabiliriz.Ama dikkat!!Bu tür degişkenler hafizada 16 byte tan fazla yer kaplarlar.

Örnek: Private Sub Form_Load()
Dim Ad As Variant , No As Variant
Dim Dogum As Variant
Ad="Emre KUTLU"
Tel="1112222222"
Dogum=#Oct,25,1983#
End Sub string:

Matematiksel işlemlere sokulamayan veri tipidir.Iki string ifade arasındaki + isareti bu stringleri birleştir anl¤¤¤¤¤ gelir.
Örnek:
Private Sub Form_Load()
Const A=20,B=50
Dim C As integer
C=A+B
End Sub Eger burada tanımlanan degişkenlere daha büyükk sayılar atanırsa overflow oluşur.
long:

Daha büyük bir aralıkta integer yani tamsayı tanımlamak için kullanabileceğiimiz bir veri tipidir. Hafizada 4 byte yer kaplar. Kullanılabilecek uç değerler +2,147,483,647 ile -2,147,483,648 dir.
currency:

Sayısal tipteki veriler için tanımlanmış bir veri tipidir.Hafizada 8 byte yer kaplarlar. 4 hane ondalık kısmı olmak üzere toplam 19 haneden oluşur.(nokta hariç) Alabileceği maximum degerler -922,337,203,685,477.5808 ile 922,337,203,685,477.5807 arasındadır.
date:

Tarih türündeki bilgileri kullanmak için oluşturulmuş bir veri tipidir. Hafizada 8 byte yer kaplarlar. 1 Ocak ile 31 Aralik 9999 arasındaki tarihleri kullanabilirsiniz
Örnek:
Private Sub Form_Load()
Dim Dogum_tarihi As Date , Olum_Tarihi As Date
Dogum_tarihi =#Oct,25,1955#
Olum _Tarihi=#Oct,6,2002#
End Sub boolean:

Mantıksal veri tipleri için kullanılır. Iki seçenekten birisini(True,False) alabilir.Bellekte 2 byte yer işgal ederler.
byte:

O ile 255 arasindaki tamsayıları ifade etmek için kullanılabilecek veri tipidir.
Örnek
Private Sub Form_Load()
Dim A As Byte , B As Byte
A =23
B= 143
End Sub single:

Tam sayı olmayan sayılar için kullanabileceğimiz bir veri tipidir.Single tipindeki veriler bellekte 4 byte yer kaplarlar. Negatif sayilar için alabileceği aralık -3.402823E38 ile –1.401298E-45 ,pozitif sayılar için alabileceği aralık 1.401298E-45 ile 3.402823E38 arasındadır.
double:

Visual Basic’te kullanılabilecek en büyük sayısal değerlerin veri tipidir. Hafızada 8 byte yer kaplarlar. 16 haneye kadar hassastırlar. Maximum alabileceği degerler pozitif sayılar için 4.94065645841247E-324 ile 1.797693134862232E308 , negatif sayılar için de -1.797693134862232E308 ile -4.94065645841247E-324 arasındadır..
Örnek:
Private Sub Form_Load()
DefDbl A-K
Dari=50000
Bugday=600000
Arpa=340.56
End Sub b-)Tip bildirimi için DIM deyimi

Iyi bir program oluşturmak için,değişkenlerin tiplerini önceden bildirmek faydalı bir alışkanlıktır.Tip bildiriminde bulunulmazsa,değişkenlerin tipi variant olarak atanır.Bu da gereksiz yer kaplamaya neden olur.Değişkenlerin tipini bildirmede alternatif bir yol Dim deyimini kullanmaktır.Dim x as integer gibi.
Dim a,b,c,d as double şeklindeki ifade,sedece d'yi double olarak atayacak,a,b,c değişkenleri ise variant olarak kalacaktır.
Dogru kullanım ise: Dim A As Double,B As Double,C As Double,D As Double şeklinde olmalıdır.
c-)Zorunlu tip bildirimi

VB'de tip bildirimi zorunlu değildir.Fakat yazılımcı isterse bunu zorunlu hale getirebilir.Bunun için şu adımlar izlenmelidir.
Kod penceresi açılır.
General, declarations kısmı; seçilir.
Bu bölüme option explicit yazılır.



bunu yaptıktan sonra programınızı yazarsanız,ve eğer degiskenleri tanımlamadıysanız,programı da ohalde çalıştırdıysanız hata verecektir.



d-)Degişkenlerin geçerlilik bölgesi

Aksi belirtilmediği sürece vb'de tanımlanan değişkenler sadece tanımlandıkları; prosedür (command1_click,text1_change... bir prosedürdür)içinde geçerlidir.
Bazi değişkenleri prosedürler arası; kullanmanız gerekebilir,prosedürler arası değer alıp, verme ihtimaliniz olabilir.Böyle durumlarda modül düzeyinde değişkenlere ihtiyaç vardır,bu tip değişkenleri ancak general, declarations kısmında tanımla¤¤¤¤¤ elde edebiliriz.
e-)değişkenlerin static Ve dinamik durumları

Aksi belirtilmediği sürece tanımladığıimiz değişkenler dinamiktir;yani olay, prosedürün her çalışmasında(mesela, her command1_click olduğunda)bir önceki işlem sonundaki hesaplanmış değeri saklamazlar.Fakat değişkeninizi tanımlarken Dim X As integer değil de Static X As integer olarak tanımlarsanız her prosedür çalıştığındanda 1 önceki procedure sonundaki hesaplanmış değeri saklar onun üstünden işlem yapar.
Logged
faster-_-38
Ziyaretçi
« Yanıtla #2 : 29 Mart 2008, 09:48:57 »

VB'de Fonksiyonlar


Asc:Klavyeden girilen herhangi bir ifadenin,nümerik ascii karşılığını verir.Eğer tek harfli ifade yerine sözcük girerseniz, sözcüğün ilk karakterini baz alacaktır. Mesela asc(bilgisayar)denirse b'nin nümerik ascii karşılığı olan 98 elde edilir.
Chr$:0-255 arasında girilen bir nümerik ascii koduna karşılık gelen karakteri verir.
Örnek:



Bu programda text1'e gireceğniz karakterin karşılığı text2'de,text3'de girdiğiniz karakterin karşılığı text4'de görünecektir.
Private Sub Command1_Click()
a = Text1.Text
a = Asc(a)
Text2.Text = Str(a)
End Sub

Private Sub Command2_Click()
b = Text3.Text
b = Val(b)
If b > 255 Then GoTo son
b = Chr(b)
Text4.Text = b
son:
End Sub Space$(n):Belirtilen text'e veya herhangi bir yere n kadar boşluk koyar. Text1.text=space$(4)gibi
Right$:Belirtilen stringin en sağından başla¤¤¤¤¤ belirtilen sayıda stringi kopyalamak için kullanılır. A=Right$("mutasyon",5) derseniz A="asyon" olacaktır.
Left$:Belirtilen stringin en solundan başla¤¤¤¤¤ belirtilen sayıda stringi kopyalamak için kullanılır. A=Leftt$("mutasyon",4) derseniz A="muta" olacaktır.
Mid$:Belirtilen stringin belirtilen karakterinden başla¤¤¤¤¤,soldan sağa doğru belirtilen kadar karakter kopyalamaya yarar. A=Mid$("mutasyon",2,4) derseniz A="utas" olacaktır.Yani 2.karakterden başla¤¤¤¤¤ sağa doğru 4 karakter kopyalayacaktir.
Örnek:





Standart.exe olarak açtığınız form'a 1 tane text kutusu(text1.text),3tane command butonu yerleştirin,command butonlarının adını ister değiştirin ister değiştirmeyin program yinede çalışır... Butonların üzerlerine sıra ile çift tıkla¤¤¤¤¤ sıra ile aşağıdaki kodları yazın.Programı çalıştırdıktan sonra "sağdan" butonuna tıklarsanız, text1 kutusuna ,"mutasyon" stringinin içindeki "asyon" u alıp yazacaktır,"soldan" butonuna tıkladığınızda ise "muta",ortadan butonuna tıkladığınızda ise "utas" yazacaktır...
Private Sub Command1_Click()
Dim a As String
a = Right$("mutasyon", 5)
Text1.Text = a
End Sub

Private Sub Command2_Click()
Dim b As String
b = Left$("mutasyon", 5)
Text1.Text = b
End Sub

Private Sub Command3_Click()
Dim c As String
c = Mid$("mutasyon", 2, 4)
Text1.Text = c
End Sub

Private Sub Form_Load()
Text1.Text = "mutasyon"
End Sub Len(String):Girilen stringin kaç karakter uzunluğunda olduğunu öğrenmemize yardımcı olur.Sayısal bir değer alır.A=Len("mutasyon") derseniz A=8 olur.
Val(String):Girilen stringi sayısal ifadeye çevirir ve bize,onu toplama,çıkarma... gibi işlemlerde kullanma imkanı sağlar. A=val("15") ifadesi text kutusundan veya herhangi bir yolla girilmiş 15 yazısını rakamsallaştırmaya yarar.
Str(Rakam):Val'ın yaptığını tam tersini yapar.Örneğin text kutusunda rakamsal ifadeleri kullanamayız,anca onları str ile string haline getirip kullanabiliriz. A=Str(15) derseniz A="15" olacaktır.
Lcase(String):İçine girilen küçüklü büyüklü yazıyı tamamen küçük harfe çevirir. A=Lcase("MutASYon") derseniz A="mutasyon" olacaktır.
Ucase(String):İçine girilen küçüklü büyüklü yazıyı tamamen büyük harfe çevirir. Ucase("MutASYon") derseniz A="mutasyon" olacaktır.
Instr(Rakam,String1,String2):Birinci string içinde ikinci stringi arar.Eğer aradığını bulursa değeri bulduğu karakterin sıra numarası olur.Örneğin birinci stringimiz "mutasyon" ikinci stringimiz "a" yani birinci string içinde a'yı arıyacağız.Programı yazıp çalıştırdığımızda değer 4 olacaktır,yani "a" 4.sırada.İsterseniz aramayı istediğiniz sıradan başlatabilirsiniz.Örneğin A=Instr(5,"mutasyonla","a") derseniz A=10 olacaktir.Çünkü direk 5.karakterden aramaya başlattığımız için 10. sıradaki "a" yı gördü.
Trim(String):Parantez içine girilen stringin sağındaki ve solundaki boşluk karakterini siler.
Ltrim(String):Parantez içine girilen stringin solundaki boşluk karakterini siler.
Rtrim(String):Parantez içine girilen stringin sağındaki boşluk karakterini siler.
Date:Bu komut sayesinde sistemin tarihini öğrenebilir yada onu yeniden set edebiliriz.A=Date dersek A o günün tariki olacaktır.Yanlız atlanılmaması gereken önemli bir ayrıntı ise A yı dim ile tanımlarken dim A as date demeliyiz.Eğer bilgisayarın tarihini set etmek istiyorsak Date="aa-gg-yyyy".Bir de date olarak tanımladığımız bir değişkene tarih atayabiliriz.Mesela dim t as date olarak tanımladığımız değişkene tarih atamak istersek t=#aa-gg-yyyy# şeklinde bir ibare kullanmalıyız.Eğer ay kısmına 13 ve daha büyük yada gün kısmına 32 ve daha büyük rakamlar girerseniz programın çalışması esnasında hata verecektir.
Time:
Hem zamanı öğrenmede hem de zamanı set etmede kullanılır. Time="SaSa:dkdk:snsn" şeklinde set edilebilir. Ayrıca... Private Sub Command1_Click()
Text1.Text = Time
End Sub ile zamanı bir değişken olarak elimizde tutabiliriz
Now:O anki tarih ve zamanı bize verir.
Private Sub Command1_Click()
Text1.Text = Now
End Sub Datevalue(string):İçine girilen string türü bir ifadeyi date türü bir değişkende tutmamıza yarar.Örneğin programda kullanıcıdan textboxa doğum tarihini girmesini istediniz,textbox bunu tabi ki string türü bir ifade olarak saklayacaktır.Bunu date türü bir ifadeye çevirmede datevalue komutu devreye giriyor...
Dim t as date
Text1.text="25-10-1983"
t= Datevalue("text1.text") Date¤¤¤¤¤¤(Yıl,Ay,Gün):Girilen integer türü değişkenleri date türü değişkenlere çevirmeye yarar.Ayrıca Date¤¤¤¤¤¤(1996,10,28)-Dateseria(1954,3,5) gibi bir kullanımla 2 tarih arasındaki gün sayısını bulabiliriz.
Time¤¤¤¤¤¤(saat,dakika,saniye):Parantez içine girilen ifadeyi zaman türünde değişkene çevirir.A=Time¤¤¤¤¤¤(22,11,08) komutu ile A; 10:11:08 PM değerine eşit olacaktır.
Day(Tarih):Verilen tarih türü bilginin içinden gün kısmını alır.A=Day("10/25/1983") ifedesinde A=25 olacaktır.
Month(Tarih):Verilen tarih türü bilginin içinden ay kısmını alır.
Year(Tarih):Verilen tarih türü bilginin içinden yıl kısmını alır.
Hour(Zaman):Zaman türü bilginin içinden saati alır.
Minute(Zaman):Zaman türü bilginin içinden dakikayı alır.
Second(Zaman):Zaman türü bilginin içinden saniyeyi alır.
__________________

VB'de if-then-else, select-case


Evet bu yazıda if then ve else'nin kullanımlarının yanı sıra select case komutunun kullanımını anlatacağım.Bunların hepsi kontrol komutları başlığı altında toplanabilirdi ama ben bu komutları döngülerden ayrı bir şekilde anlatmak istedim,bundan sonraki ders ise döngüler olacak.
if-then-else

if koşul then KOMUTU

Belirtilen koşulun olması hainde programa yaptırmak istediğimiz şeyleri yaptırmaya yardımcı koddur. kullanımı;
if koşul then
KOMUTLAR
end if
Şeklindedir.Yani belirttiğimiz koşul sağlanırsa program, if ile end if arasında belirttiğimiz komutları uyguluyacaktır.Eğer belirttiğimiz koşul sağlanmamışsa program direk -end if- komutunun 1 alt satırına atlayacaktır.Yani if ve end if komutları arasındaki hiç bir işlemi yapmayacaktır.
Örnek:
Standart.exe olarak açmış olduğunuz formunuza bir textbox (text1) ve bir commandbutton (command1) ekleyiniz.Sonra tasarım penceresindeyken command buttona çift tıkla¤¤¤¤¤ açılan kod penceresine aşağıdaki kodlarıyazınız.Daha sonra F-5'e basarak programı çalıştırınız.Program sayınızın tek mi çift mi olduğunu kontrol ediyor ve ona göre mesaj veriyor.
Private Sub Command1_Click()
a = Text1.Text
a = Val(a)
If a Mod (2) = 0 Then
MsgBox "girdiğiniz sayı çifttir"
End If
If a Mod (2) <> 0 Then
MsgBox "girdiğiniz sayı tektir"
End If
End Sub if koşul then.... else...KOMUTU

If ... end if 'ten tek farki vardır,koşulun sağlanmadığı durumda da programa mudahale edebilirsiniz.Örneğin belirttiğiniz koşulun olup olmadığını if ile kontrol ediyordunuz,şimdi burada da else diyerek,programa; koşulun olmadığı durumda da şunu yap diye emir veriyorsunuz.Kullanımı şu şekildedir:
if koşul Then
KOMUTLAR
else
KOMUTLAR
End if
Daha önce de dediğim gibi,eğer belirttiğiniz koşul varsa if'in altındaki komutlar yerine getiriliyor,eğer belirttiğiniz koşullar yoksa else nin altındaki komutlar yerine getiriliyor.
Örnek: Yukarıda 2 tane if komutu kullanarak yazdığımız komutu daha kısa satırda else kullanarak yazacak olursak;
Private Sub Command1_Click()
a = Text1.Text
a = Val(a)
If a Mod (2) = 0 Then
MsgBox "girdiğiniz sayı çifttir"
Else
MsgBox "girdiğiniz sayı tektir"
End If
End Sub If koşul then..... ElseIf koşul then.....KOMUTU

Birden fazla koşulumuzun olduğu durumlarda defalarca if kullanmaktansa if ve else if lerle durumu bağlayabiliriz.Belki programı daha az satırda yazma adına çok şey yapmış olmayız ama programı yazmada hakimiyeti kaybetmeyiz,programı takip etmek daha kolay olur...
If koşul Then
KOMUTLAR
ElseIf Koşul1 Then
KOMUTLAR
ElseIf Koşul2 Then
KOMUTLAR
End If
Örnek: Şimdiki örnekte 1'den 5 e kadar olan sayıların kontrolünü yapan,girdiğiniz sayının kaç olduğunu size söyleyen ve 5 ten büyük bir sayı girmişseniz uyaran 1 program yazıyoruz.Formunuza bir textbox ve bir command buton ekleyin ve tasarım aşamasındayken command butona cift tıklayıp açılan pencerede bu kodu yazın..
Private Sub Command1_Click()
a = Text1.Text
a = Val(a)
If a > 5 Then
MsgBox "5'ten büyük sayı giremezsiniz"
End If
If a = 1 Then
MsgBox "Girdiğiniz sayı=1"
ElseIf a = 2 Then
MsgBox "Girdiğiniz sayı=2"
ElseIf a = 3 Then
MsgBox "Girdiğiniz sayı=3"
ElseIf a = 4 Then
MsgBox "Girdiğiniz sayı=4"
ElseIf a = 5 Then
MsgBox "Girdiğiniz sayı=5"
End If
End Sub Select .... Case

Mantık olarak yukarıda anlattığımız If..ElseIf yapısının aynısıdır.Mevzu bahsi olan değişken Select Case DEGİŞKEN komutuyla seçilir ve bu değişkenin birden fazla durumları Case Deger1... Case Değer2.... komutlarıyla kontrol edilir.Kullanımı;
Select Case Değişken
Case Değer1
.....
Case Değer2
.....
Case Değer3 to Değer 10
.....
Case Else
End Select
Gördüğünüz gibi 1 den fazla koşullu durumda select case yi kullandık.Case deger 3 to deger 10 yazan satır dikkatinizi çekmiştir sanırım.Değişkenin değerinin belli bir şeyden diğer şeye kadar olan durumda şunu şunu yap anl¤¤¤¤¤ gelir.Dikkat edilmesi gereken diğer komut da Case Else.Bu da belirtilen tüm seçeneklerin dışında başka 1 değer olması durumunda altında belirtilen koomutları uygulatır.


VB'de if-then-else, select-case


Evet bu yazıda if then ve else'nin kullanımlarının yanı sıra select case komutunun kullanımını anlatacağım.Bunların hepsi kontrol komutları başlığı altında toplanabilirdi ama ben bu komutları döngülerden ayrı bir şekilde anlatmak istedim,bundan sonraki ders ise döngüler olacak.
if-then-else

if koşul then KOMUTU

Belirtilen koşulun olması hainde programa yaptırmak istediğimiz şeyleri yaptırmaya yardımcı koddur. kullanımı;
if koşul then
KOMUTLAR
end if
Şeklindedir.Yani belirttiğimiz koşul sağlanırsa program, if ile end if arasında belirttiğimiz komutları uyguluyacaktır.Eğer belirttiğimiz koşul sağlanmamışsa program direk -end if- komutunun 1 alt satırına atlayacaktır.Yani if ve end if komutları arasındaki hiç bir işlemi yapmayacaktır.
Örnek:
Standart.exe olarak açmış olduğunuz formunuza bir textbox (text1) ve bir commandbutton (command1) ekleyiniz.Sonra tasarım penceresindeyken command buttona çift tıkla¤¤¤¤¤ açılan kod penceresine aşağıdaki kodlarıyazınız.Daha sonra F-5'e basarak programı çalıştırınız.Program sayınızın tek mi çift mi olduğunu kontrol ediyor ve ona göre mesaj veriyor.
Private Sub Command1_Click()
a = Text1.Text
a = Val(a)
If a Mod (2) = 0 Then
MsgBox "girdiğiniz sayı çifttir"
End If
If a Mod (2) <> 0 Then
MsgBox "girdiğiniz sayı tektir"
End If
End Sub if koşul then.... else...KOMUTU

If ... end if 'ten tek farki vardır,koşulun sağlanmadığı durumda da programa mudahale edebilirsiniz.Örneğin belirttiğiniz koşulun olup olmadığını if ile kontrol ediyordunuz,şimdi burada da else diyerek,programa; koşulun olmadığı durumda da şunu yap diye emir veriyorsunuz.Kullanımı şu şekildedir:
if koşul Then
KOMUTLAR
else
KOMUTLAR
End if
Daha önce de dediğim gibi,eğer belirttiğiniz koşul varsa if'in altındaki komutlar yerine getiriliyor,eğer belirttiğiniz koşullar yoksa else nin altındaki komutlar yerine getiriliyor.
Örnek: Yukarıda 2 tane if komutu kullanarak yazdığımız komutu daha kısa satırda else kullanarak yazacak olursak;
Private Sub Command1_Click()
a = Text1.Text
a = Val(a)
If a Mod (2) = 0 Then
MsgBox "girdiğiniz sayı çifttir"
Else
MsgBox "girdiğiniz sayı tektir"
End If
End Sub If koşul then..... ElseIf koşul then.....KOMUTU

Birden fazla koşulumuzun olduğu durumlarda defalarca if kullanmaktansa if ve else if lerle durumu bağlayabiliriz.Belki programı daha az satırda yazma adına çok şey yapmış olmayız ama programı yazmada hakimiyeti kaybetmeyiz,programı takip etmek daha kolay olur...
If koşul Then
KOMUTLAR
ElseIf Koşul1 Then
KOMUTLAR
ElseIf Koşul2 Then
KOMUTLAR
End If
Örnek: Şimdiki örnekte 1'den 5 e kadar olan sayıların kontrolünü yapan,girdiğiniz sayının kaç olduğunu size söyleyen ve 5 ten büyük bir sayı girmişseniz uyaran 1 program yazıyoruz.Formunuza bir textbox ve bir command buton ekleyin ve tasarım aşamasındayken command butona cift tıklayıp açılan pencerede bu kodu yazın..
Private Sub Command1_Click()
a = Text1.Text
a = Val(a)
If a > 5 Then
MsgBox "5'ten büyük sayı giremezsiniz"
End If
If a = 1 Then
MsgBox "Girdiğiniz sayı=1"
ElseIf a = 2 Then
MsgBox "Girdiğiniz sayı=2"
ElseIf a = 3 Then
MsgBox "Girdiğiniz sayı=3"
ElseIf a = 4 Then
MsgBox "Girdiğiniz sayı=4"
ElseIf a = 5 Then
MsgBox "Girdiğiniz sayı=5"
End If
End Sub Select .... Case

Mantık olarak yukarıda anlattığımız If..ElseIf yapısının aynısıdır.Mevzu bahsi olan değişken Select Case DEGİŞKEN komutuyla seçilir ve bu değişkenin birden fazla durumları Case Deger1... Case Değer2.... komutlarıyla kontrol edilir.Kullanımı;
Select Case Değişken
Case Değer1
.....
Case Değer2
.....
Case Değer3 to Değer 10
.....
Case Else
End Select
Gördüğünüz gibi 1 den fazla koşullu durumda select case yi kullandık.Case deger 3 to deger 10 yazan satır dikkatinizi çekmiştir sanırım.Değişkenin değerinin belli bir şeyden diğer şeye kadar olan durumda şunu şunu yap anl¤¤¤¤¤ gelir.Dikkat edilmesi gereken diğer komut da Case Else.Bu da belirtilen tüm seçeneklerin dışında başka 1 değer olması durumunda altında belirtilen koomutları uygulatır.


VB'de Do ... Loop Döngü Yapısı


Programlama dillerinde döngüler genelde aynı işi birden fazla yaptırmak amacıyla işlemi istenilen miktarda tekrarlamak için kullanılır.Ya da belli aralıklarda birşey arattırmak için veya belli aralığa birşeyler eklemek için aynı işlemi tekrar tekrar yapmaktan kurtulmak için. Döngüler yapı olarak ikiye ayrılır. For....Next Ve Do...Loop biz bu derste Do...Loop yapısını inceleyeceğiz.VB de Do...Loop sözcüklerini içeren dört ayrı tür mevcuttur.
1)Do While ... Loop Yapısı

Bu yapıda önce koşul kontrol edilir.Kontrol doğruysa programın akışı döngünün içine girer.Değilse döngüye 1 kez bile girilmeden program işleyişine devam edecektir. Şunu da unutmamk gerek, döngü while koşulu sağlandığı sürece işlevine devam edecektir. Yapısı;
Do While Koşul
Komutlar
Loop
Örnek: Standart.exe olarak açtığınız bir forma bir buton yerleştirin.Butonu çift tıklayın Private Sub Command1.click ile başlayan paragrafi yazın. Sonra tekrar project penceresine geçin ve formun herhangi bir yerine çift tıklayın Private Sub Form Load ile başlayan paragrafı Yazın. Sonra F5 e basarak çalıştırın. Project penceresinden çift tıklatmamın sebebi,ilgili kısma ait private sub... end sub metinlerini vb nin otomatik yazması sebebiyledir.



Private Sub Command1_Click()
End
End Sub

Private Sub Form_Load()
a = MsgBox("Devam için evet,bitirmek için hayırı tıkla",
vbOKCancel, "DoWhile-Loop Yapısı incelemesi")
Do While a = vbOK
a = MsgBox("Devam için evet,bitirmek için hayırı tıkla",
vbOKCancel, "DoWhile-Loop Yapısı incelemesi")
Loop
End Sub Benim yazdığım örneği bilgisayarınıza indirmek için buraya tıklayınız..
2)Do Until ... Loop

Bu yapıda da önce koşul kontrol edilir ancak while..loop yapısının tersine burada koşul doğru olmadığı sürece programın akışı döngünün içine girer,doğru olduğunda döngünün dışına çıkar.Yada koşul zaten doğruysa hiç döngünün içine girmez. Yapısı;
Do Until Koşul
Komutlar
Loop
Örnek: Yukarıda While..Loop Yapısındaki yaptığımız programla aynı işe yarıyan programı until..loop ile yapacağız. Anlaşılması açısından daha yararlı olacağını düşündüm.Yapmanız gereken while ı silip until,vbok u silip vbcancel yapmanız.
Private Sub Command1_Click()
End
End Sub

Private Sub Form_Load()
a = MsgBox("Devam için evet,bitirmek için hayırı tıkla",
vbOKCancel, "DoWhile-Loop Yapısı incelemesi")
Do Until a = vbCancel
a = MsgBox("Devam için evet,bitirmek için hayırı tıkla",
vbOKCancel, "DoWhile-Loop Yapısı incelemesi")
Loop
End Sub 3)Do ... Loop While

İşte geldik koşulun altta kontrol eildiği yapıya.Bundan sonra anlatacağım dördüncü yapıda da böyle. Koşul altta kontrol ediliyor. Tahmin edeceğiniz gibi birinci yapıda anlattığım Do While ... Loop yapısından tek farkı while ın en üstte değil de en altta olmasıdır. Hal böyle olunca koşul sağlansa da sağlanmasa da döngü yukarıdan aşağıya en az bir kez akacaktır, sonra aşağıdaki while ile belirtilen koşul sağlandığında döngü yukarı çıkıp bir kez daha dönecektir,ta ki koşul sağlanmayıncaya dek.Sağlanmayınca programın akışı döngüden çıkar ve alt satırdan devam eder. Yani birinci ve ikinci yapıdan farkı,hiçbirşey olmasa bile döngü,koşul en aşağıda kontrol edildiği için en az bir kez icra eder.Yapısı;
Do
Komutlar
Loop While Koşul
4)Do ... Loop Until

Bu da bir üstte anlattığım yapı gibi koşulu aşağıda kontrol ediyor. Yani koşul kontrol edilmesi için program döngünün içinde enaz bir kere akıyor. Sizin de tahmin ettiğiniz gibi ikinci yapıda anlattığım Do Until...Loop yapısından tek farkı az önce bahsettiğim gibi koşulun aşağıda kotrol edilmesi.Yapısı;
Do
Komutlar
Loop Until Koşul
 
Logged
faster-_-38
Ziyaretçi
« Yanıtla #3 : 29 Mart 2008, 09:50:32 »

VB'de For ... Next Döngü Yapısı

Programlama dillerinde döngüler genelde aynı işi birden fazla yaptırmak amacıyla işlemi istenilen miktarda tekrarlamak için kullanılır.Ya da belli aralıklarda birşey arattırmak için veya belli aralığa birşeyler eklemek için aynı işlemi tekrar tekrar yapmaktan kurtulmak için. Döngüler yapı olarak ikiye ayrılır. For....Next Ve Do...Loop biz bu derste For...Next yapısını inceleyeceğiz.
For..Next döngüsünde olay for ve next arasında istenilen miktarda tekrar edilerek döner.Kullanımı:
For x=a to b step Y
Komutlar
Next x
Burada sayacımız x oluyor. Bu x, a dan b ye kadar Y kadar atla¤¤¤¤¤ sayıyor. Mesela For x=1 to 10 step 1 gibi bir ifadeyle döngü 1 den 10 a kadar 10 kez donecektir. Yani yukarıdaki ifadede x=1 görecek next e kadar olan komutları yerine getirecek,x=2 görecek next e kadar olan komutları yerine getirecek, x=5 görecek next e kadar olan komutları yerine getirecek,dikkat! x=10 görecek next e kadar olan komutları yerine getirecekve döngüden çıkıp artık next in altındaki komutları yerine getirmeye başlıyacak. Eğer step 2 deseydik x 1,3,5,7,9 değerlerini olacaktı, eğer for x=0 to 10 step 2 deseydik x 0,2,4,6,8,10. Mesela 0 den 10 a kadar olan çift sayıların toplamını bu şekilde döngü içerisinde yapabiliriz.
Örnek: Sıfır ile 10 arasındaki çift sayıları toplayan çok küçük bir program yazacağız. Standart.exe olarak açtığınız programa bir tane command buton ko¤¤¤¤¤ çifr tıklayın. Çift tıklayınca project penceresinden command penceresine geçecektir. Bu pencerede şu kodu yazın ve F5 e basarak progamı çalıştırıp command butonunu tıklayın. içinde 30 yazan bir Mesaj kutusu elde edeceksiniz.
Private Sub Command1_Click()
For x = 0 To 10 Step 2
a = a + x
Next x
MsgBox a


End sub
Logged

Sayfa: [1]   Yukarı git
  Yazdır  

 

Gitmek istediğiniz yer: