PDA

Tüm Versiyonu Göster : Visual Basic


dapHne
02-06-05, 21:47
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.

dapHne
02-06-05, 21:55
YENİ PROJE SAYFASI
Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.

dapHne
02-06-05, 22:44
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

dapHne
02-06-05, 23:19
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ış

dapHne
02-06-05, 23:20
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

dapHne
02-06-05, 23:23
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

dapHne
02-06-05, 23:23
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

dapHne
02-06-05, 23:24
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

dapHne
02-06-05, 23:26
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

dapHne
02-06-05, 23:29
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

dapHne
02-06-05, 23:29
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

GaLeM
02-06-05, 23:30
cok iyi topik ya emegine saglık sanırım devamı gelecek

dapHne
02-06-05, 23:30
cok iyi topik ya emegine saglık sanırım devamı gelecek

teşekkür ederim ;) evet devamı gelecek

dapHne
02-06-05, 23:38
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

dapHne
02-06-05, 23:41
Değişkenler ( Variables )

Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.

dapHne
02-06-05, 23:43
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

dapHne
02-06-05, 23:45
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”

dapHne
02-06-05, 23:47
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

dapHne
02-06-05, 23:48
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

dapHne
02-06-05, 23:52
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.

dapHne
03-06-05, 00:36
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.)

dapHne
03-06-05, 00:43
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

dapHne
03-06-05, 00:46
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"

dapHne
03-06-05, 00:47
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

dapHne
04-06-05, 12:08
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

dapHne
04-06-05, 12:16
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

dapHne
04-06-05, 12:25
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

dapHne
04-06-05, 12:32
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.

dapHne
04-06-05, 12:39
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.

dapHne
04-06-05, 12:52
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.

dedekind
07-06-05, 17:56
helal be coook gusel olmus
eline koluna saglık
cook saol

sen denizlide ne okuyosun ya

dapHne
08-06-05, 00:37
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

dapHne
09-06-05, 02:29
teşekkürler, abartmayın arkadaşlar ;(( utandım bak şimdi

dapHne
03-07-05, 10:15
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

dapHne
03-07-05, 10:16
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

dapHne
03-07-05, 10:26
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

dapHne
03-07-05, 10:27
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

dapHne
03-07-05, 10:27
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

dapHne
03-07-05, 10:38
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

dapHne
03-07-05, 10:40
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.

dapHne
03-07-05, 10:40
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.

dapHne
03-07-05, 10:42
Ortak Özellikler

Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.

dapHne
03-07-05, 10:45
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

dapHne
03-07-05, 10:46
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..

deltree
18-07-05, 01:14
ellerine saglık dostum ama vb.60 indirecek link bulamadım hala

dapHne
18-07-05, 11:27
program download bölümünde isteğini bildir, sonuç elde edeceğine eminim ;)

dapHne
03-09-05, 12:40
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

dapHne
03-09-05, 12:42
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.

dapHne
03-09-05, 12:45
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.

dapHne
03-09-05, 12:48
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.

dapHne
03-09-05, 12:50
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

dapHne
03-09-05, 12:51
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

dapHne
03-09-05, 12:53
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

dapHne
03-09-05, 12:55
Ş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

dapHne
03-09-05, 13:06
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

dapHne
03-09-05, 13:09
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

dapHne
03-09-05, 13:10
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

dapHne
03-09-05, 13:11
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

dapHne
03-09-05, 13:13
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

dapHne
03-09-05, 13:18
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

dapHne
03-09-05, 13:20
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

dapHne
03-09-05, 13:23
ToolBox

Linki görüntüleyebilmek için <a href="%2$s"><strong>Üye</strong></a> olmanız gerekiyor.

dapHne
03-09-05, 13:23
Pointer – Fare İşaretçisi

Form üzerine aktarılamaz. Kontrol nesnelerinin yerini ve boyutunu değiştirmek için kullanılır.

YAMAK
23-10-05, 00:03
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

killer
09-11-05, 20:16
meraba dost valla dine harikasin yani konusturtmussun ellerini bilgilerini sagol

destek22
29-11-05, 11:24
uzun uğraşın için teşekkürler

ramazan_2020
16-06-06, 16:19
emegklerine saglık.tesekkurler

cengowen
12-07-06, 12:19
Gercekten super bir anlatim ellerine saglik

Pes!m!sT
28-09-06, 12:48
ay süppersinnn çok güsel bi çalışma yapmışsınnn çok ihtiyacım vardııı..;)
teşekkür ederimmm;)

samo23
28-02-07, 02:48
Süpersin dostum çok güzel olmuş +rep

onur_kanh
06-05-07, 11:51
Mükemmel bir çalışma bu. Emeğine sağlık... Hepsi için ayrı ayrı teşekkürler...

osghe
20-11-07, 13:59
çok teşk dapHne mükemmel bi paylaşım :)

pWrofd_E
18-12-07, 01:20
Ş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