Tüm Versiyonu Göster : Visual Basic
VISUAL BASIC 'İ BAŞLATMA
PROJECT PENCERESİ
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
Değişik amaçlara hizmet eden birçok seçenek var, görüldüğü gibi. Ama biz "standard exe" seçimini yapacağız.Yine de diğerlerini açıklamamazlık yapmayalım ;)
Standard EXE: Normal Bir Visual Basic projesi
ActiveX Exe: ActiveX kodu yaratma
ActiveX DLL: ActiveX bileşeni yaratma
ActiveX Control: ActiveX kontrolü yaratma
VB Aplication 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: Dinamic HTML (DHTML) teknolojisi Microsoft Internet Explorer içinde yer alacak sayfalar yaratır.
VB Enterprise Edition... :Visual Basic Enterprise Edition özellikleri.
YENİ PROJE SAYFASI
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
Visual Basic IDE Yapısı
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor. (Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.)
Menu Bar : VB program mönüsü
Tool Bar : Mönü kısayol tuşları
Project Explorer : Projede yer alan form, module gibi elemanları listeler
Properties Window : Kontrol ve formların özelliklerini gösterir
Form Layout Window : Formun ekran üzerinde bulunduğu yeri gösterir
ToolBox : Arayüz tasarımında kullanılanılabilecek kontroller
Form Desinger : Projenin ara yüzünün tasarlandığı pencere
Object Browser : VB kütüphanesinde kullanılan tip ve değişkenleri gösterir
Code Window : Programın kodlamasının yapılacağı editör
File Mönüsü
New Project : Yeni bir proje başlatır ( Ctrl + N )
Open Project : Daha önce kaydedilmiş bir projeyi açar ( Ctrl + O )
Add Project : Uygulamaya yeni projeler ekler
Remove Project : Uygulama içindeki bir projeyi uygulamadan çıkarır
Save Project : Projede bulunan tüm nesneleri kaydeder
Save Project As : Tüm nesneleri ve projeyi yeni bir isimle kaydeder
Save : Sadece aktif nesneyi kaydeder
Save As : Sadece aktif nesneyi yeni bir isimle kaydeder
Print : Projeyi yazdırır ( Ctrl + P )
Current Module : Aktif modülü yazdırır
Current Project : Projede bulunan bütün nesneleri yazdırır
Form Image : Form görüntüsünü yazdırır
Form as Text : Nesnelere ait özellikleri yazdırır
Print Setup : Yazıcı ve baskı ayarlarını değiştirir
Make Project1.exe : EXE dosya oluşturur
Auto Increment : Program sürüm numarası her exe yapışta otomatik olarak artar
Exit : Visual Basic programından çıkış
Edit Mönüsü
Undo : Geri al
Redo : Son yapılan işlemi tekrarla
Cut : Kes ( Ctrl + X )
Copy : Kopyala ( Ctrl + C )
Paste : Yapıştır ( Ctrl + V )
Paste Link : DDE uygulamalarında bir Windows uygulamasından Clipboard’a
kopyalanan verileri VB uygulaması içine aktarır
Delete : Silme
Delete Table From Database : Veri tabanından bir tabloyu siler
Select All : Tüm kod yada kontrolleri seçer ( Ctrl + A )
Select All Columns : Veri kaynağı penceresinde bulunan tüm alanları seçer
Table : Tablo işlemleri yapar
Set Primary Key : Seçilen bir sütun için birincil anahtar tanımlar
Insert Column : Tabloya yeni bir alan ekler
Delete Column : Tablodan bir alan siler
Find : Belirli bir ifadeyi arar
Current Procedure : Sadece aktif alt program içerisinde arar
Current Module : Sadece aktif olan form veya modülde arar
Current Project : Projede bulunan bütün form ve modüllerde arar
Find Next : Bir sonrakini arar
Replace : Bir ifadeyi arayarak başka bir ifade ile değiştirir
Indent : İmlecin bulunduğu satırı bir tab sağa kaydırır
Outdent : İmlecin bulunduğu satırı bir tab sola kaydırır
Insert File : Koda imlecin bulunduğu noktadan itibaren başka bir dosyadan
alınan kodu ekler
List Properties/Methods : Kod penceresine yazılan ifadeden sonra yazılabilecek
diğer ifadeleri gösterir
List Constants : İfadenin alabileceği sabit değerleri gösterir
Quick Info : Fonksiyon, metot, prosedür ve değişkenlerin yazılışını gösterir
Parameter Info : Fonksiyon veya ifadelerin içerdikleri parametreleri gösterir
Complete Word : Yazılan ifadenin otomatik olarak tamamlanmasını sağlar
Bookmarks : Sık kullanılan satırlara kolay bir erişim sağlar
Toggle Bookmark : Ulaşılmak istenen satırı işaretler veya işareti iptal eder
Next Bookmark : Bir sonraki işaretlenmiş kod satırına gider
Previous Bookmark : Bir önceki işaretlenmiş kod satırına gider
Clear All Bookmarks : Aktif penceredeki tüm işaretlemeleri iptal eder
View Mönüsü
Code : Kod penceresini gösterir
Object : Kod ortamında adı geçen kontrolü form üzerinde gösterir
Definition : Değişkenin nerede tanımlandığını gösterir
Last Position : Kod penceresindeki bulunulan son noktaya geri gider
Object Browser : Nesne tarayıcı penceresini açar ( F2 )
Debug : Projeyi satır satır çalıştırır ve değişkenlerin değerlerini gösterir
Immediate Window : Hata ayıklama penceresi.Debug modda değişken üzerinde
işlem yapılmasını sağlar
Local Window : Debug modda kontrollere ait değerlerin izlemesini sağlar
Watch Window : Debug modda Debug - Add Watch menüleri ile eklenen
değişkenlerin değişiminin izlemesini sağlar
Call Stack : Aktif olan prosedür çağrılarının listesini gönderir
Project Explorer : Projedeki dosyaları görüntüler ( Ctrl + R )
Project Window : Properties penceresini görüntüler
Form Layout Window : Layout peceresini görüntüler
Property Pages : Özellikleri topluca değiştirme imkanı verir ( F4 )
Table : Diyagram pencerelerini görünür kılar. Query, View ve veritabanı
tasarım pencerelerinde kullanılır
Show Panes : Query ve View tasarım pencerelerindeki kısımları görüntüler
Zoom : Diyagram penceresini belirtilen oranlarda görüntüler
Toolbox : Toolbox penceresini görüntüler
Color Palet : Renk penceresini görüntüler
Data View Window : Data view penceresini görüntüler
Toolbars : Araç çubuklarını gösterilip gizler
Project Mönüsü
Add Form : Projeye form eklenir
Add MDI Form : Projeye MDI form eklenir
Add Module : Projeye Module eklenir
Add Class Module : Projeye Class Module eklenir
Add User Control : Projeye kullanıcı kontrolü eklenir
Add Property Page : Oluşturlan ActiveX için Property Page eklenir
Add User Document : ActiveX dökümanı eklenir
Add DHTML Page : Dinamik HTML uygulamalarına dinamik HTML sayfası eklenir
Add Data Report : Veritabanı uygulamalarına Data Report eklenir
Add WebClass : Int. Information Server uygulamalarına WebClass
nesnesi eklenir
Add Microsoft UserConneciton : UserConneciton nesnesi eklenir
More ActiveX Designers : Kullanılabilecek ActiveX tasarımlarını listeler
Add File : Hazır modül, form, sınıf modülleri dosyalar gibi
bileşenleri eklenir
Remove : Seçili olan dosyayı projeden çıkarır
References : Nesne kütüphanelerinden nesneler eklenir
Components : ToolBox’a yeni kontroller eklenir ( Ctrl + T )
Project Properties : Proje ile ilgili özellikler ayarlanır
Format Mönüsü
Align : Form üzerindeki kontrolleri aynı hizaya getirir
Lefts : Kontrollerin sol taraflarını hizalar
Centers : Kontrollerin merkez noktalarını hizalar
Rights : Kontrollerin sağ taraflarını hizala
Tops : Kontrollerin üst taraflarını hizalar
Middles : Kontrollerin üst üste getirerek orta kısımlarını hizalar
Bottoms : Kontrollerin alt taraflarını hizalar
To Grid : Kontrollerin form üzerinde noktalarla göre hizalanır
Make Same Size : Form üzerindeki kontrolleri aynı boyuta getirir
Width/Height : Kontrolleri aynı genişliğe / yüksekliğe ayarlar
Both : Kontrolleri aynı yükseklik ve genişliğe ayarlar
Size to Grid : Kontrollerin köşe ve kenar çizgilerini gridlerle çakıştırır
Horizontal Spacing : Kontrollerin arasındaki yatay boşluğu ayarlar
Make equal : Kontrollerin arasındaki yatay boşlukları eşitler
Increase/Decrease : Kontrollerin arasındaki yatay boşlukları artırır/azaltır
Remove : Kontrollerin arasındaki yatay boşlukları tamamen kaldırır
Vertical Spacing : Kontrollerin arasındaki dikey boşluğu ayarlar
Make Equal : Kontrollerin arasındaki dikey boşlukları eşitler
Increase/ Decrease : Kontrollerin arasındaki dikey boşlukları artırır/azaltır
Remove : Kontrollerin arasındaki dikey boşlukları tamamen kaldırır
Center In Form : Form üzerindeki kontrolleri formun ortasına koyar
Order : Form üzerindeki kontroller üst üste ise sıralarını değiştirir
Bring to Front : Alttaki kontrollü üste alır
Send to Back : Üstteki kontrollü alta alır
Lock Controls : Kontrollerin form üzerindeki yerlerini sabitler
Debug Mönüsü
Step Into : Programı adım adım çalıştır ( F8 )
Step Over : Prosedür çağrıları halinde adım adım çalıştırılır
Run To Cursor : Programı yeniden başlatarak imlecin olduğu kısma kadar işletir
Add Watch : Program çalışırken izlenecek değişkenler eklenir
Watch Expression : İfadenin değerini gösterir
Break When Value True : Değişkenin değeri sıfırdan farklı ise program durur
Breake When Value Changes : Değişkenin değeri değiştiğinde program durur
Edit Watch : Add Watch ile eklenen değişkenleri siler veya değiştirir
Quick Watch : Seçilen değişkenin veya işlemin o andaki değerini gösterir
Toggle Breakpoint : Programın BreakPoint bulunan koda kadar çalıştırır
Clear All Breakpoints : Tüm durdurma noktalarını siler
Set Next Statement : Durdurulma noktasından sonra çalıştırılabilir ilk komutu seçer
Show Next Statement : Durdurulma noktasından sonra çalıştırılacak ilk komutu gösterir
Run Mönüsü
Start : Programı çalıştırır ( F5 )
Start With Full Compile : Projenin tamamını kontrol ettikten sonra çalıştırır
Break : Çalışmakta olan programı geçici olarak durdurur (Ctrl + Break)
End : Çalışan bir programın çalışmasını sona erdirir
ReStart : Geçici olarak durdurulmuş programın çalışmasını baştan başlatır
Tools Mönüsü
Add Procudure : Projeye; fonlsiyon, alt program, olay ve özellik eklenir
Menü Editor : Mönü tasarımı yapılır ( Ctrl + E )
Options : Çalışılan pencerelerle ilgili özellikler değiştirilir
Auto Syntax Check : Kodları yazılışını otomatik olarak kontrol eder
Require Variable Declaration : Değişkenleri tanımlama mecburiyeti getirir
Auto List Members : Kodlamada kontrol özelliklerini otomatik olarak tamamlar
Auto Quick Info : Fonksiyon parametrelerini otomatik olarak tamamlar
Auto Data Tips : Debug moda bir değişkenin üzerinde mouse ile durulduğunda
değişkenin değerini gösterir
Editor Format : Kod penceresinin renk ve font özellikleri ayarlanır
cok iyi topik ya emegine saglık sanırım devamı gelecek
cok iyi topik ya emegine saglık sanırım devamı gelecek
teşekkür ederim ;) evet devamı gelecek
Add-Ins Mönüsü
Add-In Manager : Yardımcı uygulama ekleme penceresi
Load On StartUp : Visual Basic çalıştırıldığında yardımcı programı
otomatik olarak yükler
Değişkenler ( Variables )
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
Değişkenlere İsim Verme Kuralları
Uzunluk 255 karaktere kadardır
İlk karakter bir harf olmalıdır
Sonraki karakterler, harf, rakam ya da alt çizgi (_) sembolü olabilir
Harflerin büyük yada küçük harf olmasının önemi yoktur
İçerisinde +, - , boşluk , /, … gibi karakterler bulunmamalıdır
Akılda kalabilecek anlamlı isimler olmadır
Değişkenlerin Tanımlanması
Tools > Options > Editor > Require Variable Declaration seçeneği seçili değil ise Visual Basic içerisinde tanımlanmayan değişkenler Variant tip olarak kullanılır. Seçili ise tüm değişkenlerin deklare edilmesi zorunluluğu getirilmiş olur. Ayrıca Form yada Modülün (General)(Declaration) kısmına Option Explicit yazıldığında tanımlanmamış değişkenler kabul edilmeyecektir. Variant tip değişkenler gereksiz hafıza kullanımına neden olur.
Form (General)(Declaration) bölümünde tanımlanan değişkenler o forma ait alt yordamlarda, modül (General)(Declaration) bölümünde tanımlanan değişkenler ise o modüle ait alt yordamlarda kullanılır. Form, Module ya da Class bünyesinde değişken ve tip tanımlamaların bulunduğu kısım 64 KB'tan uzun olamaz.
Dim ile değişken tanımlama : Bir form yada bir yordam içerisinde kullanılacak değişkenlerin tanımlanmasında kullanılır.
Dim Ad As String * 12 ‘ Ad değişkeni String olarak saklanır
12 karakterlik yer ayrılır
Dim Yas As Integer ‘ Yas değişkeni Integer olarak saklanır
Dim İlk ‘ İlk değişkeni Variant olarak saklanır
Dim İlk As String, Son As String
Dim İlk, Son, Orta As String ‘ İlk, Son değişkeni Variant
Orta değişkeni String
Dim ButonYeni As CommandButton ‘ Yeni bir denetim tanımlamak
Global ile değişken tanımlama : Modül düzeyinde tanımlama. Projenin tamamında kullanılabilir.
Global Sehir As String
Global Nufus As Double
Private ile değişken tanımlama : Form ve modül düzeyinde tanımlama. Tanımlı olduğu form ya da modül içerisinde kullanılabilir.
Private Sehir As String
Public ile değişken tanımlama : Modül düzeyinde tanımlama.
Public Sehir As String
Static değişken tanımlama : Alt yordamlar içerisinde deklare edilen yerel değişkenlerin; almış oldukları değerlerin alt yordamın tekrar çağrılmasında korunmasını sağlamak için kullanılır. Bir yordam Static olarak tanımlanırsa içerisindeki tüm değişkenler Static olur.
Static GecenOgrenciSayısı As Integer
Static Function Toplam ( AA As Integer, BB As Integer )
Dizi değişken tanımlama : Bir bilgi birden fazla değer taşıyorsa bu bilginin tanımlanmasında kullanılır. Dizi değişkenlerin 0 ‘dan değil 1 ‘den başlamasını isteniyorsa (General)(Declaration) kısmına Option Base 1 yazıldığında değişkenler 1’ den başlayacaktır. Diziler alt yordamlarda argüman olarak kullanılabilir.ü
Dim Oda_No( ) As Integer ‘ Dinamik dizi
Dim Oda_No(255) As Integer ‘ Statik dizi 256 Integer içerir
Dim Oda(100) As String ‘ 0 ile 100 arasında sınırlı
Dim Not(25 To 50) As Integer ‘ 25 ile 50 arasında sınırlı
Çok boyutlu dizi değişkenlerin tanımlanması
Dim Boyut(1 To 2, 1 To 3)
Dizi elemanları Boyut(1,1) Boyut(1,2) Boyut(1,3)
Boyut(2,1) Boyut(2,2) Boyut(2,3)
ReDim ile dizilerin boyutunu değiştirme : Dinamik bir dizinin boyutunu belirler. Alt yordam içerisinde kullanılır. ReDim ile dinamik olarak açılan dizilerin isleri bitince Erase komutu ile silinmesi kullanılan belleği azaltır. Preserve deyimi ile yeni boyutlandırma yapılırken eski bilgiler saklanır. Bu şekilde boyut değiştirmede dizinin sadece son boyutu değiştirilebilir.
Dim Arrayy() ‘ Dinamik bir dizi
ReDim Arrayy(120,120) ‘ Dizi yeniden boyutlandırılıyor
ReDim Arrayy(12,12) ‘ Dizinin boyutu küçültülüyor
ReDim Preserve Arrayy(12,14) ‘ Önceki değerler saklanarak dizi boyutu
artırılıyor
Erase ile dizilerin silinmesi : Bir veya daha fazla diziyi siler. Dinamik dizilerde ayrılan hafıza serbest kalırken statik dizilerde alan saklanır.
Erase Arrayy () ‘ Dizi ve bilgilerini siler
Def ile değişken tanımlama : Değişken adının ilk karakterine göre tanımlama yapılmasını bir harf yada harf aralığı belirterek sağlar. Form ve modüllerin (General)(Declaration) kısmında kullanılır.
DefStr String
DefInt Integer
DefLng Long
DefSgn Single
DefDbl Double
DefCur Currency
DefVar Variant
DefBool Boolean
DefByte Byte
DefDate Date
DefObj Object
DefStr A ‘ A ile başlayan değişkenler String
DefInt M-R ‘ M - R aralığındaki harfler ile başlayan değişkenler Integer
Const : Bunlar program içinde değeri değiştirilemeyen sabitlerdir. Visual Basic içinde tanımlanmış sabitleri mönüden Add-Ins > Add_Ins Manager ile API Viewer çalıştırılarak WIN32API.TXT dosyasından okunabilir.
Const SbtVar = 3326
Public Const SbtString = "Merhaba"
Private Const SbtInt As Integer = 2
Declare ile API fonksiyonlarını tanımlamak : DLL ‘ler içerisinde bulunan API fonksiyonları program içerisinde kullanılmadan önce declare ile (General)(Declaration) kısmında tanımlanırlar.
Declare Sub GetSystemInfo Lib “Kernel32” (lpSystemInfo As SYSTEM_INFO)
Declare Function GetMenu Lib “User32” (ByVal hnwd As Long) As Long
Enum ... End Enum : Enumerated tip yani numaralandırılmış birkaç değer alabilen veri tiplerinin tanımlandırılmasında kullanılır. Properties penceresi içerisinde listelenir.
Enum Hiza ‘ Numaralanmış hiza tanımlaması
[Sola Dayalı] ‘ 0 değeri
[Ortada] ‘ 1 değeri
[Sağa Dayalı] ‘ 2 değeri
End Enum
Set ile bir nesne değişkenine değer atamak : Bir kontrolü değişkene atayarak kontrol üzerinde işlem yapılabilmesini sağlar.
Set TKutu = Text1
TKutu.Text = “Deneme”
Nümerik değişkenler ilk kullanıldıklarında sıfır değeri alır
Variant değişkenler ilk oluşturulduklarında boştur
Single değişkenler 7 hane duyarlıdır sonrası yuvarlatılır
Variant değişken değişkenler içerisinde en yavaş olanıdır
Döngü sayaçları için Long ya da Variant yerine integer kullanmak programı hızlandır
Integer bir değişkene kesirli sayılar tam sayıya dönüştürülerek atanır
Tarih bilgileri “#” arasında verilir
Türler Arası Dönüşüm
CStr : Matemetiksel değişkeni String değişkene dönüştürür
Sonuc = CStr(638.424) ‘ Sonuc = "638.424"
CInt : Matemetiksel değişkeni yuvarlayarak Integer değişkene dönüştürür
Sonuc = CInt(5,5) ‘ Sonuc = 6
CLng : Matemetiksel değişkeni Long değişkene dönüştürür
Sonuc = CLng(35327,35) ‘ Sonuc = 35327
CCur : Matemetiksel değişkeni Currency değişkene dönüştürür
Sonuc = CCur(2096,529176) ‘ Sonuc = 2096,5292
CSng : Matemetiksel değişkeni Single değişkene dönüştürür
Sonuc = CSng(86.4421125) ‘ Sonuc = 86.44211
CDbl : Matemetiksel değişkeni Double değişkene dönüştürür
Sonuc = CDbl(12,345) ‘ Sonuc = 12345
Sonuc = CDbl(12345) ‘ Sonuc = 12345
CVar : Matemetiksel değişkeni Variant değişkene dönüştürür
Sonuc = Cvar(223 & "000") ‘ Sonuc = 223000
CBool : Matemetiksel değişkeni Boolean değişkene dönüştürür
Sonuc = CBool(12 < 5) ‘ Sonuc = False
CByte : Matemetiksel değişkeni Byte değişkene dönüştürür
Sonuc = CByte(12 > 7) ‘ Sonuc = 1
CDate : Matemetiksel değişkeni Date değişkene dönüştürür
Sonuc = CDate(1) ‘ Sonuc = 12/31/1899
Sonuc = CDate(2) ‘ Sonuc = 1/1/1900
CDec : Matemetiksel değişkeni Decimal değişkene dönüştürür
Fonksiyonlar
InStr : Bir String ‘in diğeri içerisinde ilk nerde bulunduğunu kontrol eder
AdSoyad = "Defne Yıldırım"
Sonuc = InStr(1, AdSoyad , "r") ‘ Sonuc = 3
Sonuc = InStr(4, AdSoyad , "r") ‘ 4. karakterden itibaren arar. Sonuc = 0
Sonuc = InStr(8, AdSoyad , "u") ‘ 8. karakterden itibaren arar. Sonuc = 14
Left : String ‘in soldaki belli sayıdaki karakteri ile yeni bir String oluşturur
Sonuc = Left(AdSoyad , 5) ‘ Sonuc = "Defne"
Mid : String ‘in ortasındaki karakterlerden yeni bir String yaratır
Sonuc = Mid(AdSoyad , 3, 6) ‘ Sonuc = "fne Yı"
Right : String ‘in sağındaki belli sayıdaki karakteri ile yeni bir String oluşturur
Sonuc = Right(AdSoyad , 8) ‘ Sonuc = "Yıldırım"
Trim : String ‘in sağındaki ve solundaki boşlukları atarak yeni bir String oluşturur
Soyad = " yıl "
Sonuc = Trim(Soyad) ‘ Sonuc = "yıl"
LTrim : String ‘in soldaki boşlukları atarak yeni bir String oluşturur
Sonuc = LTrim(Soyad) ‘ Sonuc = "yıl "
RTrim : String ‘in sağında boşlukları atarak yeni bir String oluşturur
Sonuc = RTrim(Soyad) ‘ Sonuc = " yıl"
LCase : String ‘in bütün karakterlerini küçük harf yapar
Sonuc = LCase(AdSoyad) ‘ Sonuc = "defne yıldırım"
UCase : String ‘in bütün karakterlerini büyük harf yapar
Sonuc = UCase(AdSoyad) ‘ Sonuc = "DEFNE YILDIRIM"
Len : Stringdeki karakter sayısını bulur
Soyad="yıl"
Sonuc = Len(soyad) ‘ Sonuc = 3
Asc : Stringin ilk karakterinin ascii kodunu bulur
Sonuc = Asc("A") ‘ Sonuc "65"
Sonuc = Asc("aranan") ‘ Sonuc "97"
Sonuc = Asc("a") ‘ Sonuc "97"
Chr : 0 – 255 arası tam sayıyı o sayıya karşılık gelen Ascii karaktere dönüştürür
Sonuc = Chr(65) ‘ Sonuc "A"
Str : String‘e dönüştürme
Sonuc = Str(654846546) ‘ Sonuc = "654846546"
Space : İstenen miktarda boşluk karakteri atar
AdSoyad = "Defne"
AdSoyad = AdSoyad + Space(10)
AdSoyad = AdSoyad + "Yıldırım" ‘ AdSoyad = "Defne Yıldırım"
StrComp : Variant yada String iki değişkeni karşılaştırır
AD0 = "Defne Yıldırım"
AD1= "defne yıldırım"
Sonuc = StrComp(AD0, AD1, VbTextCompare) ‘ Sonuc = 0
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
StrConv : String değişkenlerde dönüşüm yapar
Ad =" Defne"
Sonuc = StrConv(ad, 1) ‘ Sonuc = "DEFNE"
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
StrReverse : String değişkende harfleri tersten sıralayarak atar
Sonuc = StrReverse(Ad) ‘ Sonuc = "enfeD"
Replace : Karakterleri istenen başka karakterlerle değiştirir
Sonuç = Replace(ad,”rat”,”stafa”,,,VbTextCompare) ‘ Sonuc = "Mustafa"
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
String : İstenilen sayıda karakteri Variant değişkene atar
Sonuc = String( 5, “ * “ ) ‘ Sonuc = “*****”
Fix : Ondalık kısmı atarak Integer ‘a dönüştürme
Sayı = -99.8
Sonuc = Fix(Sayı) ‘ Sonuc = -99
Sayı = 99.8
Sonuc = Fix(Sayı) ‘ Sonuc = 99
Int : Ondalık kısmı atarak Integer ‘a dönüştürme
Sonuc = Int(6.94846546) ‘ Sonuc = "6 "
Sonuc = Int(6.35484654) ‘ Sonuc = "6 "
Sonuc = Int(-6.84654) ‘ Sonuc = "-7 "
IsEmpty : Variant değişkenlerin dolu olup olmadığını kontrol eder
Dim Soyad As Variant
Soyad = "yıldırım"
Sonuc = IsEmpty(Soyad) ‘ Sonuc = False
IsNull : Variant değişkendeki verinin boşaltıldığını gösterir
Sonuc = IsNull(Soyad) ‘ Sonuc = False
Soyad = Null
Sonuc = IsNull(Soyad) ‘ Sonuc = True
IsNumeric : Variant değişken bir sayı ise True olur
Sonuc = IsNumeric(Soyad) ‘ Sonuc = False
IsDate : Variant değişken tarih saat bilgisi içeriyorsa True olur
Tarih = #January 1, 1970#
Tarih = Tarih + 7 ‘ Tarih 1 hafta sonraya atlar
Sonuc = IsDate(Tarih) ‘ Sonuc = True
IsArray : Değişkenin dizi olup olmadığını denetler
Dim Dizis(110) As String
Sonuc = IsArray(Dizis) ‘ Sonuc = True
CVErr : Bir hata numarası değeri alarak Error tipinde Variant olarak döndürür
IsError : Değişkenin bir variant yada Error olup olmadığını denetler
Function Hesap() ‘ CVErr fonksiyonu
On error goto hata:
...
hata:
If Err.Number <> 0 then
Hesap = CVErr()
End If
End Function
Deger=Hesap() ‘ IsError fonksiyonu
If IsError(Deger) Then
....
End If
IsObject : Değişkenin bir nesne olup olmadığını denetler
Sonuc = IsObject(Command1) ‘ Sonuc = True
Val : String ‘den Sayıya dönüştürme
Sonuc = Val("1231") ‘ Sonuc = 1231
Sonuc = Val("1231 Ali Amca") ‘ Sonuc = 1231
Sonuc = Val("1ASDF231") ‘ Sonuc = 1
Sonuc = Val("12,31") ‘ Sonuc = 12
Sonuc = Val("AS1231") ‘ Sonuc = 0
TypeName : Değişkenin veri tipinin ismini verir
Dim Ad As String
Ad="Defne"
Sonuc = TypeName(Ad) ‘ Sonuc = "String"
VarType : Variant değişkendeki verinin tipini kontrol eder
Sonuc = VarType(AdSoyad) ‘ Sonuc = 8
Sonuc = VarType(Sayı) ‘ Sonuc = 2
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor. (Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.)
Abs : Sayının mutlak değerini bulur
Sonuc = Abs(12) ‘ Sonuc = 12
Sonuc = Abs(-12) ‘ Sonuc = 12
Sqr : Sayının karekökünü alır
Sayı = 9
Sonuc = Sqr(Sayı) ‘ Sonuc = "3 "
Sgn : Sayının pozitif mi negatif mi olduğunu bulur
Sayı = 6
Sonuc = Sgn(Sayı) ‘ Sonuc = 1
Sayı = -6
Sonuc = Sgn(Sayı) ‘ Sonuc = -1
Sayı = 0
Sonuc = Sgn(Sayı) ‘ Sonuc = 0
Rnd : 0 – 1 arasında rastgele bir sayı döndürür
Randomize ‘ Her seferinde aynı sayının üretilmesini engeler
sonuc = Int(Rnd * 25 + 1) ‘ 1- 25 arası bir sayı üretir
Round : Sayıyı istenen basamağa kadar yuvarlar
Sonuc= Round(3.48) ‘ Sonuc = 3
Sonuc= Round(3.523214324, 2) ‘ Sonuc = 3.52
Sonuc= Round(3.523214324) ‘ Sonuc = 4
LBound : Dizi içerisinde ki en küçük indisi döndürür
Dim arrayy1(3 To 5) As Integer
Sonuc = LBound(arrayy1()) ‘ Sonuc = 3
Ubound : Dizi içerisinde ki en büyük indisi döndürür
Dim arrayy1(3 To 5) As Integer
Sonuc = UBound(arrayy1()) ‘ Sonuc = 5
Array : Bir variant dizisi oluşturur
Dim X As Variant
X = Array(23, 45, 67, 89, 12)
sonuc = X(3) ‘ Sonuc = 89
X = Array("Ayşe", "Damla", "Ceren")
Sonuc = X(2) ‘ Sonuc = “Ceren”
Timer : Gece yarısından sonra geçen saniye mikarı
Sonuc = Timer ‘ Sonuc 22:50 için 82200
Date : Sistem tarihini verir
Sonuc = Date ‘ Sonuc o günün tarihi
Date = #January 25, 2099# ‘ Tarih 25.01.2099 olarak değişir
Time : Sistem saatini verir
Sonuc = Time ‘ Sistem saati
Time = “12:00.00” ‘ Saati 12:00:00 olarak değiştirir
Now : Sistem tarih ve saatini gösterir
Sonuc = Now ‘ Tarih ve saat
Day : Tarinin gününü gösterir
Sonuc = Day(Now) ‘ Gün
WeekDay : Haftanın kaçıncı olduğunu gösterir
Sonuc = WeekDay(Now) ‘ 0- Pazar , 1 – Pazartesi, 2 – Salı ....
WeekDayName : Haftanın 1. 3. gibi günlerinin ismi
Sonuc = WeekDayName(5) ‘ Sonuc = "Cuma"
Month : Tarihin ayını verir
Sonuc = Month(Now) ‘ Ay
MonthName : Sayısal olarak verilen ayın ismini verir
Sonuc = Month(7) ‘ Sonuc = "Temmuz"
Year : Tarihin yılını verir
Sonuc = Year(Now) ‘ Yıl
Hour : Zamanın saat bilgisini verir
Sonuc = Hour(Now) ‘ Saat 0 – 23
Minute : Zamanın dakika bilgisini verir
Sonuc = Minute(Now) ‘ Dakika 0- 59
Second : Zamanın saniye bilgisini verir
Sonuc = Second(Now) ‘ Saniye 0 - 59
DateSerial : Verilen yıl, ay ve güne karşı gelen tarih bilgisi oluşturur
Sonuc = DateSerial(1413, 11, 21) ‘ Sonuc = "21.11.1413"
DateValue : Tarihe ait bir Variant döndürür
Sonuc = DateValue("08.07.2002")+ 1000 ‘ Sonuc = "03.04.2005"
Sonuc = DateValue("08.07.2002") - DateValue("08.07.2001") ‘ Sonuc = 365
TimeSerial : Verilen saat, dakika ve saniye ile zaman bilgisi döndürür
Sonuc = TimeSerial(5, 9, 32) ‘ Sonuc = “05:09:32”
Saat 4:32:00 ile 2:22:12 arasında geçen süre
Sonuc = TimeSerial(4-2, 32-22, 00-12) ‘ Sonuc = "02:04:48"
TimeValue : Zamana ait Variant döndürür
Saat1 = #5:11:12 PM#
Saat2 = #8:23:11 PM#
Sonuc = TimeValue(Saat2) - TimeValue(Saat1)
Saat = Hour(Sonuc) ‘ Saat = 3
Dakika = Minute(Sonuc) ‘ Dakika = 11
Saniye = Second(Sonuc) ‘ Saniye = 59
Sin : Açının sinüsünü döndürür
Cos : Açının kosinüsünü döndürür
Tan : Açının tanjantını döndürür
Cot : 1/Tan(x)
Atn : Açının arktanjantını döndürür
Cosh : (Exp(x)+Exp(-x))/2
ArcCos : Atn(x(Sqr(-x*x+1))+3,14/2
Sinh : (Exp(x)-Exp(-x))/2
ArcSin : Atn(x(Sgr(-x*x+1))
Csc : 1/Sin(x)
Exp : Doğal logaritma üssünün tabanını döndürür
Log : Sayının doğal logaritmasını döndürür
Loga : Log(x)/Log(a)
Hex : Ondalık sayıyıyı onaltılık sayıya döndürür (&H)
Oct : Ondalık sayıyı sekizlik sayıya döndürür (&O)
Type Mismatch : Hatalı veri ( String değişkene sayısal veri aktarılması, vb. )
Division By Zero : Sıfır ile bölme yapılamaz
Overflov : Değişkene yapılan atama değişken kapasitesinden büyük
Global defination invalid inside form module : Global tanımlama form içerisinde yapılamaz
Invalid outside Sub or Function : Tanımlamamış fonksiyon
Subscript out of range : Tanımlanmış aralığın dışındaki değer
Use Static or ReDim to dimension arrays in this procedure :
Değişkenler General Declaration bölümünde Static yada ReDim olarak tanımlanmış
Dublicate Defination Error : Aynı isim iki farklı tür değişken için kullanılmaya çalışılıyor
Variable Not Defined : Tanımlanmamış değişken kullanılmaya çalışılıyor
Aritmetik İşlemler
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
Exp(e) = e ^ 2
7,5E-23 7,5 * (10 ^ -23) 7,5 ‘nin 10 ‘un -23. kuvveti ile çarpımıdır
Dim Sonuc As String
Sonuç="Defne” + “ “ + “Yıldırım” ‘ Sonuç “Defne Yıldırım” değerini alır
Aritmetik işlemlerde öncelik sıralaması
( * , / ) , \ , ( + , - ) parantez içlerinde öncelik soldaki işlemdedir
3 * 5 + 7 = 22 10 / 5 * 2 = 4 30 / 1 + 1 * 5 = 35
3 + 5 * 7 = 38 10 \ 5 * 2 = 1 30 / ( ( 1 + 1 ) * 5 ) = 3
30 / ( 1 + 1 ) * 5 = 75
Bölme işleminde ikinci değer boşsa yada sıfırsa sıfıra bölme hatası oluşur
Sayıların Yuvarlanması
Kesir 0,5 ‘in üzerinde ise bir üst tam sayıya, 0,5 ‘in altında ise bir alt tam sayıya yuvarlanır. Eğer kesir 0,5 ise tek sayılarda bir üst sayıya, çift sayılarda bir alt sayıya tamamlanır.
1,77 2 ‘ye 1,22 1 ‘e 3,5 4 ‘e 6,5 6 ‘ya tamamlanır
Mantık Operatörleri
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
LIKE Bulanık Arama
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
Dim Sonuc As Boolean
Sonuc = "wqeweeww" Like "w*w" ' Sonuc = True
Sonuc = "N" Like "[C-L]" ' Sonuc = True
Sonuc = "G" Like "[!C-L]" ' Sonuc = False
Sonuc = "b7b*" Like "b#ba" ' Sonuc = True
Sonuc = "aN3b" Like "a[L-P]#[!c-e]" ' Sonuc = True
Sonuc = "CET12e3" Like "C?T*" ' Sonuc = True
Sonuc = "DAT12e3" Like "B?T*" ' Sonuc = False
Değişken Değerlerinin Karşılıklı Olarak Değiştirilmesi
Temp = Değişken_1 ‘ İlk değişkenin değeri tampon
Değişken_1 = Değişken_2 ‘ değişkende saklanıyor
Değişken_2 = Temp
Faktöriyel Hesabı
Private Sub Command1_Click()
Deger = 1
For i = 1 To Text1.Text ‘ Döngü içerisinde sayı 1’den
Deger = i * Deger ‘ başlayarak bir birer artırılarak
Next i ‘ çarpma işlemi yapılıyor
Label1.Caption = Deger
End Sub
Sayı Tek mi Çift mi?
If isEven(Text1.Text) Then
MsgBox "Sayı Çift" ‘ True ise sayı çift
Else
MsgBox "Sayı Tek"
End If
Function isEven(n As Integer) As Boolean
isEven = True
If n And 1 Then isEven = False
End Function
Kontrol ve Karar Blokları
If ... Then ... Else...
Bir koşulun oluşması yada oluşmaması durumuna göre yapılması gereken işlemlerin yapılmasını sağlayan komut bloğu.
If Koşul 1 Then
... ‘ Koşul1 in gerçekleşmesi durumunda yapılacak olanlar
ElseIf Koşul 2 Then
... ‘ Koşul1 in gerçekleşmediği Koşul2 nin gerçekleştiği
... ‘ durumlarda yapınacak işlemler
Else
... ‘ Koşul1 ve Koşul2 nin gerçekleşmesi durumda
... ‘ yapılacak işlemler
End If
IIF
Koşulun doğru yada yanlış oluşuna göre sadece iki ihtimalin geçerli olduğu durumlarda kullanılır.
Dim Sonuç As String
Notu = 45
Sonuç = IIF(Notu > 50, "Geçer","Kalır") ‘ Sonuç = "Kalır"
If TypeOf ...Then ... Else..
Kontrolün isatenen tipte olup olmadığını kontrol ederek buna göre işlem yapar.
If TypeOf Control_Name Is TextBox Then
MsgBox "Bu Bir Metin Kutusu"
Else
MsgBox "Bu Bir Metin Kutusu Değil"
End If
Choose
Bir liste içerisinden seçim yapar
indx = 3
Seçim = Choose(indx, "İyi", "Kötü", "Çirkin") ‘ Seçim = "Çirkin"
Select Case ... End Select
Değişkenin belirli değerlerine göre yapılacak farklı işlemlerin seçiminde kullanılır.
Select Case değişken
Case id1
‘ Değişkenin id1 değeri aldığı durumlarda yapılacak işlemler
Case id2
‘ Değişkenin id2 değeri aldığı durumlarda yapılacak işlemler
case id3 to id9
‘ id3 ve id9 aralığındaki tüm değerler için yapılacak işlemler
Case Else
‘ Değişkenin id1- id2 - id3 - id4 - id5 - id6 - id7 - id8 - id9
‘ değeri almadığı durumlarda yapılacak işlemler
End Select
Do While ... Loop
Belirli bir koşul gerçekleştiğinde yapılacak işlemlerde kullanılır.
Do While Koşul
‘ Koşulun gerçekleşmesi durumunda yapılacak işlemler
Exit Do ‘ Tercihli çıkış
Loop
Do ... Loop While ...
Bir kere işlemi yaptıktan sonra, koşul gerçekleşmesi durumunda işlemi tekrarlar.
Do
‘ En az bir kere, Koşulun gerçekleşmesi durumunda ise tekrar yapılacak işlemler
Loop While Koşul
Do Until ... Loop
Belirli bir koşulun gerçekleşmediğinde yapılacak işlemlerde kullanılır.
Do Until Koşul
‘ Koşulun gerçekleşmemesi durumunda yapılacak işlemler
Loop
Do ... Loop Until ...
Bir kere işlemi yaptıktan sonra, koşul gerçekleşmediğinde işlemi tekrarlar.
Do
‘ En az bir kere, Koşulun gerçekleşmemesi durumunda ise
‘ tekrar yapılacak işlemler
Loop Until Koşul
Döngü Komutları
For ... Next
Belirli sayıda tekrarlanması gereken komutların tekrarlanmasını sağlayan komut bloğu.
For Sayaç = İlkdeğer To Sondeğer Step ArtışAralığı
... ‘ Sayaç sondeğeri alana kadar
... ‘ tekrarlanacak işlemler
Exit For ‘ Tercihli çıkış
Next Sayaç
For Each .. Next
Bir dizi içerisindeki elemanların tamamı için bir işlemin yapılmasında yada bir doküman içerisinde bir kelimenin aranması gibi tekrar gerektiren durumlarda kullanılır.
Dim dizi(9) As Integer
For Each i in dizi() ‘ Dizinin her elemanı için tekrar eder
Randomize
dizi(i) = Rnd * 10000
Print dizi(i)
Next i
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
InputBox – Bilgi Giriş Kutusu
Kullanıcıdan bilgi alınmasını sağlar.
Bilginin girilebilmesi için yeni bir pencere açılacak ve bilgi girişini bekleyecektir. Bilgi giriş penceresinden girilen bilgi String(karakter) türünde olacaktır. Sayısal olarak kullanılacak bilgini VAL fonksiyonu yardımıyla sayısal değere dönüştürülmesi gereklidir.
Dim Adres As String
Dim SıraNo As Integer
Ad = InputBox("Adınızı Giriniz","Bilgi Giriş penceresi")
SıraNo = Val(InputBox("Sıra No Giriniz"))
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
Ad = InputBox("Adınızı Giriniz","Bilgi Giriş penceresi", “Misafir”)
bu kodun en soundaki "Misafir" yazısı ile inputbox'ın default giriş yazısını "Misafir" olarak belirledik.
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
MsgBox – Mesaj Kutusu
Kullanıcıyı bilgilendirmeyi sağlar. Kullanıcıya elde edilen bilgi ve uyarı mesajlarını bildirmekte ya da seçimin onaylanmasını sağlamak için kullanılır.
Dim Sayı As Integer
Sayı = 45
MsgBox "Öğrenci sayısı" & Sayı
vbCrLf CHR$(13)+(CHR$(10)
vbNullChar Boşluk
vbLf Yeni Satır Başına Geçiş CHR$(10)
vbBack BackSpace CHR$(8)
vbCr Satır Başı Chr$(13)
uyarı = "Kayıt Siliniyor" + Chr$(13) + "Emin misiniz"
Cevap= MsgBox(uyarı, 4, "Kayıt Silme")
MsgBox "Hatalı İşlem", vbCritical, "Mesaj Kutusu"
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
Cevap = MsgBox(Mesaj, Görünüm, Başlık)
GeriDöndürülenDeğer = MsgBox("Değişiklikleri Kaydedecek misiniz?", _
32 + 3 + 512 + 0, "Kayıt Kontrol")
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
helal be coook gusel olmus
eline koluna saglık
cook saol
sen denizlide ne okuyosun ya
teşekkür ederim ;m) bilgisayar teknolojisi ve programlama, neden sordun
Black_Cobra
08-06-05, 20:22
Varya sana tek kelımeyle helal olsun bızde VISUAL BASIC bılıyoruz sanardık kendımızı.Saygıyla selamlıyorum :D
teşekkürler, abartmayın arkadaşlar ;(( utandım bak şimdi
Event Handler – Olay
Kullanıcı eylemleri sonucunda ortaya çıkan durumlara olay denir. Farenin yer değiştirmesi, tuşa basılması, formun açılması gibi işlemlerin her biri bir olay sayılır. Visual Basic de programlama olaylar üzerine kuruludur. Bunlar alt yordamlar şeklinde kodlanır.
Private Sub Command1_Click() ‘ Tuşa basılması olayı
‘ Olay gerçekleşince yapılacak işlemler
End Sub ‘ Bitiş satırı
Alt Yordamlar
Belirli bir görevi yada olayı yerine getirmek amacı ile yazılan küçük kod grubudur.
Public Sub İsim ‘ Başlangıç satırı
.... ‘ Olay sonucu yapılacak işlem
End Sub ‘ Bitiş satırı
Form, OCX kontrol, Class ya da Module isimleri 40 karakterden uzun olamaz
Bir alt yordam 64 KB tan uzun olamaz
Bir form, Module ya da class içerisinde kod 65534 satırdan fazla olamaz
Tek bir kod satırı, 1023 karakterden uzun olamaz
Uzun koda satırlarının sonuna "_" konularak alt satırdan devam edilebilir
Kullanılmayan nesne referansları Nothing ‘e eşitlenerek bellek kullanımı azaltılır
Public Sub Topla(X, Y)
Deger = X + Y
MsgBox deger
Exit Sub ‘ Tercihli çıkış
End Sub
Private Sub Form_Click()
Deger1 = 100
Deger2 = 25
Topla Deger1, Deger2 ‘ Alt yordam için 1. çağrı yöntemi
‘ Call Topla(Deger1,Deger2) ‘ Alt yordam için 2. çağrı yöntemi
End Sub
Function – Fonksiyon
Belli işlemleri yerine getirip işlem sonucuna bağlı olarak değer üreten kod parçasıdır.
Public Function Deger(X, Y)
If X > 0 Then
Deger = X + Y
Else
Exit Function ‘ Tercihli çıkış
End If
Deger = Sqr(Deger) ‘ Fonksiyon sonucu
End Function
Private Sub Form_Load()
Dim D1 As Long, D2 As Long
D1 = InputBox(" D1 ? ")
D2 = InputBox(" D2 ? ")
Deger = Topla(D1, D2) ‘ Fonkisyon çağrılıyor
MsgBox Deger
End Sub
1) Referans ile fonksiyon çağırmak : Fonksiyon içerisinde değeri değişen değişkenin bu değeri saklamasını sağlar.
Sub Bip(BipSayisi As Integer)
Do While BipSayisi > 0
Beep
BipSayisi = BipSayisi - 1
Loop
End Sub
Dim KacDefaBip As Integer
KacDefaBip = 5
Bip KacDefaBip
MsgBox KacDefaBip & "Defa Bip Sesi Çıkardım" ‘ Mesaj : 0 Defa Bip Sesi Çıkardım
2) Değer ile fonksiyon çağırmak : Fonksiyon içerisinde değeri değişen değişkenin; fonksiyon çağrılmadan önceki değerini almasını sağlar.
Sub Bip(ByVal BipSayisi As Integer)
Do While BipSayisi > 0
Beep
BipSayisi = BipSayisi - 1
Loop
End Sub
MsgBox KacDefaBip & "Defa Bip Sesi Çıkardım" ‘ Mesaj : 5 Defa Bip Sesi Çıkardım
Klavye Olayları
Tuş basımının aktif olmasa dahi form tarafından algılanması isteniyorsa formun KeyPreview özelliği True olmalıdır.
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
KeyDown
Tuşa basılması olayı. Aktif nesne tarafından algılanır. KeyUp olayından önce oluşur.
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
‘ Tuşa basılması ile yapılacak olan işlemler
End Sub
KeyPress
Tuşa basılması ve bırakılması olayı. Aktif nesne tarafından algılanır.
Private Sub Form_KeyPress(KeyAscii As Integer)
‘ Tuşun basılıp bırakılması ile yapılacak olan işlemler
End Sub
KeyUp
Basılı olan tuşun bırakılması olayı. Aktif nesne tarafından algılanır. KeyDown olayından sonra oluşur.
Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
‘ Basılı olan tuşun bırakılması ile yapılacak olan işlemler
End Sub
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
Basılan Tuşun Kodunu Bulmak
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
MsgBox "Basılan Tuşun Kodu :" & KeyCode
End Sub
Basılan Tuşun Ascii Değerini Bulmak
Private Sub Form_KeyPress(KeyAscii As Integer)
MsgBox "Basılan Tuşun Ascii Değeri :" & KeyAscii
End Sub
Sadece Büyük Harf Kullanmak
Private Sub Form_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
KeyAscii = 0
End If
KeyAscii = Asc(UCase(Chr(KeyAscii))) ‘ UCase ile büyük harfe çevriliyor
Print Chr(KeyAscii)
End Sub
Esc Tuşu ile Çıkış
Çıkış_Butonu.Cancel = True
Private Sub Çıkış_butonu_Click()
End
End Sub
NumLock ve CapsLock’u Açıp Kapatmak
(General)(Declaration)
Const VK_CAPITAL = &H14 ‘ CapsLock
Const VK_NUMLOCK = &H90 ‘ NumLock
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Private Declare Function GetKeyboardState Lib "user32" _
(kbArray As KeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32" _
(kbArray As KeyboardBytes) As Long
Dim Tuş_Kodu As String
Dim kbArray As KeyboardBytes
Private Sub Command1_Click()
' Tuş_Kodu = VK_NumLock
Tuş_Kodu = VK_CAPITAL
GetKeyboardState kbArray
kbArray.kbByte(Tuş_Kodu) = 0 ' Kapat
SetKeyboardState kbArray
End Sub
Private Sub Command2_Click()
kbArray.kbByte(Tuş_Kodu) = 1 ' Aç
SetKeyboardState kbArray
End Sub
Sisteme Tuş Basımı Yollamak
(General)(Declaration)
Option Explicit
Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, _
ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Const VK_CONTROL = &H11
Const KEYEVENTF_KEYUP = &H2
Const VK_ESCAPE = &H1B
Private Sub Form_Click()
Call keybd_event(VK_CONTROL, 0, 0, 0) ‘ CTRL
Call keybd_event(VK_ESCAPE, 0, 0, 0) ‘ ESC
Call keybd_event(VK_ESCAPE, 0, KEYEVENTF_KEYUP, 0)
Call keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0)
End Sub
Fonksiyon Tuşlarına Görev Atamak
(General)(Declaration)
Option Explicit
Const KEY_F1 = &H70
Const KEY_F2 = &H71
Const KEY_ESCAPE = &H1B
Form1.KeyPreview = True ‘ Formun KeyPreview özelliği True
Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case KEY_F1 ‘ F1 - Tarih
Text1.Text = Date$
Case KEY_F2 ‘ F2 - Saat
Text1.Text = Time$
Case KEY_ESCAPE ‘ ESC - Çıkış
Unload Me
End Select
End Sub
SendKeys – Tuş Basımı Göndermek
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
Private Sub Command1_Click()
SendKeys "%{F4}", True ‘ Alt + F4 Programı kapar
End Sub
Fare Olayları
MouseDown
Form yada kontrol üzerinde farenin herhangi bir tuşuna basılması olayı.
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
‘ Form üzerinde farenin bir tuşuna basılması ile yapılacak işlemler
End Sub
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
MouseMove
Fare işareçisinin form yada kontrol üzerinde yer değiştirmesi olayı.
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
‘ Fare işaretçisinin formun üzerinde hareket etmesi ile yapılacak işlemler
End Sub
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
MouseUp
Form yada kontrol üzerinde farenin basılı olan tuşunun bırakılması olayı.
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
‘ Form üzerinde farenin basılı tuşunun basılması ile yapılacak işlemler
End Sub
Click
Form yada kontrol üzerinde fare ile tek tıklama olayı.
Private Sub Form_Click()
‘ Formun fare ile tek tıklanması sonucu yapılacak olan işlemler
End Sub
DblClick
Form üzerinde fare ile çift tıklama olayı.
Private Sub Form_DblClick()
‘ Formun fare ile çift tıklanması sonucu yapılacak olan işlemler
End Sub
DragDrop
Bir nesnenin fare ile hareket ettirilip bırakılması.
Private Sub Form_DragDrop(Source As Control, X As Single, Y As Single)
‘ Nesnenin fare ile form üzerinde sürüklenip bırakılması sonucu yapılacak işlemler
End Sub
DragOver
Bir nesnenin fare ile sürüklenirken bir başkasının üzerinden geçirilmesi.
Private Sub Form_DragOver(Source As Control, X As Single, Y As Single, State As Integer)
‘ Nesnenin fare ile form üzerinde sürüklenip bırakılması sonucu yapılacak işlemler
End Sub
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
Fare Butonları
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
Fare İşaretçileri
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
Ortak Özellikler
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
With ile Özelliklerin Birleştirilmesi
Private Sub Form_Load() ‘ Form özelliklerinin tek tek
Form1.Height = 3800 ‘ ayarlanması
Form1.Caption = "Normal Uygulama Örneği"
Form1.Width = 5000
End Sub
With ile
Private Sub Form_Load() ‘ Form özelliklerinin birleştirilerek
With Form1 ‘ ayarlanması
.Height = 3800
.Caption = "With Örneği"
.Width = 5000
End With
End Sub
Private Sub Command1_Click()
With Form1 ‘ Form özellikleri with ile birleştiriliyor
.Height = 3000
.Caption = "With Örneği"
.Width = 5000
.BackColor = QBColor(15)
.ForeColor = QBColor(13)
.FontBold = True
.FontItalic = False
.FontSize = 24
End With
Print "Merhaba"
End Sub
Object Browser
Bir projedeki Visual Basic yada kullanıcı tarafından eklenmiş olan nesnelerin özellik, olay ve yötemlerini gösterir.
Visual Basic mönüsünden View > Object Browser (F2) ile çağrılır.
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
red_hacker
07-07-05, 10:07
teşekkürler..
ellerine saglık dostum ama vb.60 indirecek link bulamadım hala
program download bölümünde isteğini bildir, sonuç elde edeceğine eminim ;)
SDI Form - ( Single Document Interface )
Formun yüklenmesi sırasında Load olayı içerisinde bulunan kodunuzun daha aktif olması için kodun ilk satırına Me.Show eklenir böylece form otomatik olarak devreye girer.
AutoRedraw özelliğini hızlı form güncellemesine gereksinim duyulan noktalarda False yapılır.
Formlar gerekmedikçe bellekten Unload komutu ile silinmez. Ekranda gözükmesi istemiyorsa, Unload yerine Hide ile saklanır.
Bir form üzerinde farklı ad taşıyan en fazla 254 kontrol nesnesi bulunabilir. Aynı tür olanlar bir dizi şeklinde aynı ad ile indekslenerek kullanılabilir.
Formun çağrılıp gösterilmesi sırasında gerçekleşen olayların sırası;
Form_Initialize
Form_Load
Form_Resize
Form_Paint
Set form1 = Nothing ‘ Terminate - Formun hafızadan silinmesi
Form.KeyPreview = true ‘ KeyPress olayını form tarafından
algılanabilmesi Keypreview True olmalıdır
Private Sub Form_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyEscape Then End ‘ Escape tuşu ile program kapanır
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, _
X As Single, Y As Single)
DrawWidth = 5
If Button = 1 Then ‘ Fare sol tuşu basılı olarak
Pset(X,Y) ‘ form üzerinde dolaştırıldığında
End IF ‘ noktalar halinde bir çizgi çizer
End Sub
Private Sub Form_Click()
DrawWith = 5
Line (100,150) - (500 - 1000) ‘ Düz çizgi
Line - (500 - 1000) ‘ Sıfır noktasından düz çizgi
Line (100,150) - (500 - 1000) , RGB (0, 255, 0) ‘ Yeşil düz çizgi
Line (100,150) - (500 - 1000) , RGB (0, 255, 0), B ‘ Yeşil kenarlı dikdörtgen
Line (100,150) - (500 - 1000) , RGB (0, 255, 0), BF ‘ İçi dolu yeşil dikdörtgen
Circle (1500, 1500), 400
‘ 1500, 1500 Noktası merkezli 400 twip yarıçaplı daire
Circle (1500, 1500), 400, RGB (0, 0, 255) ‘ Mavi daire
Circle (1500, 1500), 400, RGB (0, 0, 255), 0 , 3.14 ‘ Yarım mavi daire
Circle (1500, 1500), 400, RGB (0, 0, 255), , , 0.5 ‘ Enlemesine mavi elips
Circle (1500, 1500), 400, RGB (0, 0, 255), , , 1.5 ‘ Boylamasına mavi elips
pSet (1500, 1500), RGB (255, 0, 0) ‘ Kırmızı nokta
End Sub
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
Select Case UnloadMode
Case vbFormControlMenu
MsgBox "Kontrol Mönüsü İle Kapatılmıştır"
Case vbFormCode
MsgBox "Kod İle Kapatılmıştır" ‘ Unload ile
Case vbAppWindows
MsgBox "Windows Kapandığı İçin Kapanmıştır"
Case vbAppTaskManager
MsgBox "Task Manager Tarafından Kapatılmıştır"
Case vbFormMDIForm
MsgBox "MDI Formu Kapandığı İçin Kapanmıştır"
End Select
End Sub
SDI Form - Özellikler
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
SDI Form - Olaylar
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
Yöntemler
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
Formu Ortalamak
Private Sub Form_Load()
Left = (Screen.Width - Width) / 2 ‘ Ekran yüksekliğinden form yüksekliği
Top = (Screen.Height - Height) / 2 ‘ çıkarılarak fark ikiye bölünüyor
End Sub
Private Sub Form_Load()
Me.Move (Screen.Height - Me.Height)/2, (Screen.Width - Me.Width)/2
End Sub
Formu Sürekli En Üstte Tutmak
(General)(Declaration)
Const HWND_TOPMOST = -1 ' Form en üstte
Const HWND_NOTOPMOST = -2 ' Normal
Const SWP_NOSIZE = &H1 ' Form boyutları değiştirilemez
Const SWP_NOMOVE = &H2 ' Form taşınmaz
Const SWP_NOACTIVATE = &H10 ' Form aktif yapılmaz
Const SWP_SHOWWINDOW = &H40 ' Pencere Görünür
Private Declare Sub SetWindowPos Lib "User32" (ByVal hWnd As Long, _
ByVal hWndInsertAfter As Long, _
ByVal X As Long, ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, _
ByVal wFlags As Long)
Private Sub Form_Activate()
SetWindowPos Me.hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOACTIVATE _
Or SWP_SHOWWINDOW Or SWP_NOMOVE Or SWP_NOSIZE
End Sub
Başlıksız Formu Taşımak
(General)(Declaration)
Private Declare Function ReleaseCapture Lib "user32" () As Long
Private Declare Function SendMessage Lib "user32" Alias _
"SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, _
ByVal wParam As Long, lParam As Any) As Long
Private Const WM_NCLBUTTONDOWN = &HA1
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, _
X As Single, Y As Single)
If Button = 1 Then ‘ Farenin sol tuşu basılı iken
ReleaseCapture
r% = SendMessage(Me.hwnd, WM_NCLBUTTONDOWN, 2, 0)
End If
End Sub
ControlBox İkonunu Değiştirmek
(General)(Declaration)
Dim y As Integer
Private Sub Timer1_Timer()
y = y + 1
If y = 4 Then y = 1
Form1.Icon = Image1(y).Picture ‘ 4 adet imaj içerisindeki saklanan
Picture1.Picture = Image1(y).Picture ‘ resimler sıra ile kullanılıyor
End Sub
Hafızadaki Tüm Formları Silmek
Public Sub UnloadAllForms()
Dim Form As Form
For Each Form In Forms ‘ Her bir form için
Unload Form
Set Form = Nothing ‘ Form tamamen yok ediliyor
Next Form
End Sub
Private Sub Form_Unload(Cancel As Integer)
UnloadAllForms
End Sub
Formun Çeşitli Kısımlarının Rengini Değiştirmek
(Modul)(General)(Declaration)
Declare Function SetSysColors Lib "user32" (ByVal nChanges As Long, _
lpSysColor As Long, lpColorValues As Long) As Long
Public Const COLOR_SCROLLBAR = 0 ' ScrollBar
Public Const COLOR_BACKGROUND = 1 ' Masaüstü
Public Const COLOR_ACTIVECAPTION = 2 ' Aktif pencere adı
Public Const COLOR_INACTIVECAPTION = 3 ' İnaktif pencere adı
Public Const COLOR_MENU = 4 ' Mönü
Public Const COLOR_WINDOW = 5 ' Windows arka plan
Public Const COLOR_WINDOWFRAME = 6 ' Pencere çerçevesi
Public Const COLOR_MENUTEXT = 7 ' 3D koyu gölge
Public Const COLOR_CAPTIONTEXT = 9 ' Pencere başlığı
Public Const COLOR_ACTIVEBORDER = 10 ' Aktif pencere sınırları
Public Const COLOR_INACTIVEBORDER = 11 ' İnaktif pencere sınırları
Public Const COLOR_APPWORKSPACE = 12 ' MDI desktop arka plan
Public Const COLOR_HIGHLIGHT = 13 ' Seçili alan arka plan
Public Const COLOR_HIGHLIGHTTEXT = 14 ' Seçili mönü
Public Const COLOR_BTNFACE = 15 ' Button ' Buton
Public Const COLOR_BTNSHADOW = 16 ' 3D buton gölgesi
Public Const COLOR_GRAYTEXT = 17 ' Gri text
Public Const COLOR_BTNTEXT = 18 ' Button başlığı
Public Const COLOR_INACTIVECAPTIONTEXT = 19 ' İnaktif pencere
Public Const COLOR_BTNHIGHLIGHT = 20 ' Buton 3D işarretleme
Private Sub Command1_Click()
deger = SetSysColors(1, COLOR_ACTIVECAPTION, RGB(0,155,122)) ‘ Başlık çubuğu
deger = SetSysColors(1, COLOR_WINDOWFRAME, RGB(0,155,122)) ‘ Çerçeve
End Sub
Şeffaf Form Yapmak
(Modul)(General)(Declaration)
Option Explicit
Public Declare Function BitBlt Lib "gdi32" (ByVal hDCDest As Long, _
ByVal XDest As Long, ByVal YDest As Long, _
ByVal nWidth As Long, ByVal nHeight As Long, _
ByVal hDCSrc As Long, ByVal XSrc As Long, ByVal YSrc As Long, _
ByVal dwRop As Long) As Long
Public Const SRCCOPY = &HCC0020
Public Declare Function GetDesktopWindow Lib "user32" () As Long
Public Declare Function GetWindowDC Lib "user32" (ByVal hwnd As Long) As Long
Public Declare Function ReleaseDC Lib "user32" (ByVal hwnd As Long, _
ByVal hdc As Long) As Long
Dim hwnddesk As Long
Dim hdcdesk As Long
Public Sub SeffafYap (FTBP As Form)
FTBP.AutoRedraw = True
hwnddesk = GetDesktopWindow()
hdcdesk = GetWindowDC(hwnddesk)
Call BitBlt(FTBP.hdc, 0, 0, _
FTBP.Width / Screen.TwipsPerPixelX, _
FTBP.Height / Screen.TwipsPerPixelY, hdcdesk, _
FTBP.Left / Screen.TwipsPerPixelX, _
FTBP.Top / Screen.TwipsPerPixelY, SRCCOPY)
Call ReleaseDC(hwnddesk, hdcdesk)
End Sub
Private Sub Form_Load()
SeffafYap Me ‘ Form başlıksız olacak
End Sub
Form Zeminini Karartmak
Sub kararma(ref As Form)
For renk = 255 To 0 Step –1 ‘ 255 ‘den başlayarak birer birer azalıyor
DoEvents
ref.BackColor = RGB(renk, renk, renk)
Next renk
End Sub
Private Sub Command1_Click()
kararma Me
End Sub
Form Başlığını Yakıp Söndürmek
(General)(Declaration)
Private Declare Function FlashWindow Lib "user32" (ByVal hwnd As Long, _
ByVal bInvert As Long) As Long
‘ Timer1.Interval = 1000
Private Sub Timer1_Timer()
deger = FlashWindow(Me.hwnd, 1)
End Sub
Private Sub Command1_Click()
' İşlemi başlatır
Timer1.Enabled = True
End Sub
Form Boyunu Uzatıp Kısalatmak
Private Sub FormBoyu(ref As Form, taraf As Boolean, aralık As Integer)
Dim Olcu
If taraf = False Then
Olcu = ref.Height + aralık
If aralık < 0 Then Exit Sub
Do
ref.Height = ref.Height + 1
DoEvents
Loop Until ref.Height >= Olcu
End If
If taraf = True Then
Olcu = ref.Height - aralık
If Olcu <= 0 Then Exit Sub
If aralık < 0 Then Exit Sub
Do
ref.Height = ref.Height - 1
DoEvents
Loop Until ref.Height <= Olcu
End If
End Sub
Private Sub Command1_Click()
‘ True – Yukarı doğru kısalır
‘ False - Aşağı doğru uzar
Call FormBoyu(Me, True, 100)
End Sub
Private Sub Command2_Click()
' İşlemi durduur
Timer1.Enabled = False
End Sub
Yuvarlak Form Oluşturmak
(General)(Declaration)
Option Explicit
Private Declare Function CreateEllipticRgn Lib "gdi32" (ByVal X1 As Long, _
ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long
Private Declare Function SetWindowRgn Lib "user32" (ByVal hWnd As Long, _
ByVal hRgn As Long, ByVal bRedraw As Long) As Long
Private Sub Form_Load()
'En ve boy değerleri değiştirilerek eliptik formlar oluşturulabilir
Dim ref&, i&
Dim en&, boy&
en& = Me.Width / Screen.TwipsPerPixelX
boy& = Me.Height / Screen.TwipsPerPixelY
ref& = CreateEllipticRgn(0, 0, en&, boy&)
i& = SetWindowRgn(Me.hWnd, ref&, True)
End Sub
Form Üzerinde Renk Geçişi
Private Sub RenkGecisi(Ref As Form)
Dim intLoop As Integer
Ref.DrawStyle = vbInsideSolid
Ref.DrawMode = vbCopyPen
Ref.ScaleMode = vbPixels
Ref.DrawWidth = 2
Ref.ScaleHeight = 256
For intLoop = 0 To 255
Ref.Line (0, intLoop)-(Screen.Width, intLoop - 1), RGB(255, 0, 255 - intLoop), B
Next intLoop
End Sub
Private Sub Form_Activate()
RenkGecisi Me
End Sub
Form’a ScrollBar Eklemek
(General)(Declaration)
Private Declare Function ShowScrollBar Lib "user32" (ByVal hwnd As Long, _
ByVal wBar As Long, ByVal bShow As Long) As Long
Private Const SB_HORZ = 0
Private Const SB_VERT = 1
Private Const SB_BOTH = 3
Private Sub Form_Load()
ShowScrollBar Me.hwnd, SB_BOTH, True
End Sub
Form Close Butonunu İptal etmek
Dim bClose As Boolean
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
If bClose = False Then Cancel = True
End Sub
Etkileşimsiz Form Yapmak
(General)(Declaration)
Private Type POINTAPI
X As Long
Y As Long
End Type
Private Declare Function SetCapture Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function ReleaseCapture Lib "user32" () As Long
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Dim Pt As POINTAPI
Private Sub Form_Load()
SetCapture Me.hwnd
End Sub
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, _
X As Single, Y As Single)
ReleaseCapture
SetCapture Me.hwnd
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, _
X As Single, Y As Single)
GetCursorPos Pt
Me.CurrentX = 0
Me.CurrentY = 0
Me.Cls
Me.Print "Fare Kooordinatları : "
Me.Print "X:" + Str$(Pt.X) + " Y:" + Str$(Pt.Y)
Me.Print " (Çıkış - ALT-F4)"
SetCapture Me.hwnd
End Sub
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, _
X As Single, Y As Single)
ReleaseCapture
SetCapture Me.hwnd
End Sub
Form’u Küçülterek Kapatma
(General)(Declaration)
Const AW_HOR_POSITIVE = &H1 ' Soldan sağa
Const AW_HOR_NEGATIVE = &H2 ' Sağdan sola
Const AW_VER_POSITIVE = &H4 ' Yukarıdan aşağıya
Const AW_VER_NEGATIVE = &H8 ' Aşağıdan yukarıya
Const AW_CENTER = &H10 ' Merkeze
Const AW_HIDE = &H10000 ' Sakla
Private Declare Function AnimateWindow Lib "user32" (ByVal hwnd As Long, _
ByVal dwTime As Long, ByVal dwFlags As Long) As Boolean
Private Sub Form_Load()
Me.AutoRedraw = True
Me.Print "Unload me"
End Sub
Form Başlığını Harf Harf yazdırmak
Sub HarfHarf(ref As Form)
baslik = ref.Caption ‘ Form başlığı alınıyor
ref.Caption = "" ‘ Form başlığı siliniyor
ref.Show
For i = 0 To Len(baslik) ‘ Başlık uzunluğu kadar tekrarlanıyor
If i = 0 Then
ref.Caption = ""
current = Timer
Do While Timer - current < 0.1
DoEvents
Loop
GoTo Son
Else
End If
ref.Caption = Left(baslik, i) ‘ Başlığın soldan i kadarı seçiliyor
current = Timer
Do While Timer - current < 0.05
DoEvents ‘ Diğer programların çalışabilmesine
Loop ‘ olanak tanıyor
Son:
Next i
End Sub
Private Sub Command1_Click()
HarfHarf Me
End Sub
Private Sub Form_Unload(Cancel As Integer)
AnimateWindow Me.hwnd, 200, AW_CENTER Or AW_HIDE
Set Form1 = Nothing
End Sub
MDI FORM - ( Multiple Document Interface )
Aynı anda birden fazla formu açık tutmak için formlar kullanılır.
Bir projede bir tane MDI form olabilir, ancak birçok alt form (child) içerebilir.
Child formların MDIChild özellikleri True olarak değiştirilir.
MDI formların Minimize, Maximize, Close komutları kaldırılamaz.
Tüm child formlar sadece MDIform içerisinde hareket eder.
MDI form minimize edilince, içindeki child formlarla beraber minimize olur.
Child form maksimize olunca form başlığı ana form başlığı (title bar) haline gelir.
AutoShowChildren; True ise child formlar ana form açılınca otomatik olarak görünür.
Aktif durumdaki child formun menüsü ana form mönüsü olarak görünür.
MDI formlara PictureBox ve Mönü dışında nesne eklenemez.
ChldForm.Zorder 1
Parametre kullanılmamışsa ya da değeri 0 ise chldform ön planda
Parametresi 1 ise arka planda olacaktı
Açık olan childe formların listesi; menu editorde oluşturulan menulerden birinin WindowsList özelliği onaylanarak mönü içerisinde gösterilebilir.
ActiveForm : Aktif childe form
AutoShowChildren : False - Dim ile child formlar load komutuyla gizli yüklenir
ScrollBars : Kaydırma çubukları
Arrange : Childe formaların MDI içerisinde dizilişini kontrol eder
( 1 - yatay, 2 - dikey, 3 - üst üste)
MDIForm1.Arrange vbTileHorizontal
MDIForm1.Arrange vbTilevertical
MDIForm1.Arrange vbCascade
CHILD FORM
MDI form içerisine dahil edilmiş olan formlardır.
Formlar, MDIChild özelliği true değeri yapılarak child form yapılabilir.
Bir MDI form birçok alt form (child) içerebilir.
Çalışma anında projeye yeni Child form eklemek için projede yer alan childe formlar kullanılır.
Dim YeniChilde As New FormChilde1
ToolBox
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.
Pointer – Fare İşaretçisi
Form üzerine aktarılamaz. Kontrol nesnelerinin yerini ve boyutunu değiştirmek için kullanılır.
Pointer – Fare İşaretçisi
Form üzerine aktarılamaz. Kontrol nesnelerinin yerini ve boyutunu değiştirmek için kullanılır.
Selam Arkadaşım.
Bilgini bizimle paylaştığın için teşekürler.
Yenilerini bekliyoruz. Lütfen
meraba dost valla dine harikasin yani konusturtmussun ellerini bilgilerini sagol
uzun uğraşın için teşekkürler
ramazan_2020
16-06-06, 16:19
emegklerine saglık.tesekkurler
Gercekten super bir anlatim ellerine saglik
ay süppersinnn çok güsel bi çalışma yapmışsınnn çok ihtiyacım vardııı..;)
teşekkür ederimmm;)
Süpersin dostum çok güzel olmuş +rep
Mükemmel bir çalışma bu. Emeğine sağlık... Hepsi için ayrı ayrı teşekkürler...
çok teşk dapHne mükemmel bi paylaşım :)
Şeffaf Form Yapmak
(Modul)(General)(Declaration)
Option Explicit
Public Declare Function BitBlt Lib "gdi32" (ByVal hDCDest As Long, _
ByVal XDest As Long, ByVal YDest As Long, _
ByVal nWidth As Long, ByVal nHeight As Long, _
ByVal hDCSrc As Long, ByVal XSrc As Long, ByVal YSrc As Long, _
ByVal dwRop As Long) As Long
Public Const SRCCOPY = &HCC0020
Public Declare Function GetDesktopWindow Lib "user32" () As Long
Public Declare Function GetWindowDC Lib "user32" (ByVal hwnd As Long) As Long
Public Declare Function ReleaseDC Lib "user32" (ByVal hwnd As Long, _
ByVal hdc As Long) As Long
Dim hwnddesk As Long
Dim hdcdesk As Long
Public Sub SeffafYap (FTBP As Form)
FTBP.AutoRedraw = True
hwnddesk = GetDesktopWindow()
hdcdesk = GetWindowDC(hwnddesk)
Call BitBlt(FTBP.hdc, 0, 0, _
FTBP.Width / Screen.TwipsPerPixelX, _
FTBP.Height / Screen.TwipsPerPixelY, hdcdesk, _
FTBP.Left / Screen.TwipsPerPixelX, _
FTBP.Top / Screen.TwipsPerPixelY, SRCCOPY)
Call ReleaseDC(hwnddesk, hdcdesk)
End Sub
Private Sub Form_Load()
SeffafYap Me ‘ Form başlıksız olacak
End Sub
Form Zeminini Karartmak
Sub kararma(ref As Form)
For renk = 255 To 0 Step –1 ‘ 255 ‘den başlayarak birer birer azalıyor
DoEvents
ref.BackColor = RGB(renk, renk, renk)
Next renk
End Sub
Private Sub Command1_Click()
kararma Me
End Sub
Çooo güzel bilgiler teşekkürler fakat, forumu şeffaf yapmak bölümünde, hata veriyor ?ğş4
PcTeknikZone