CLICK HERE FOR THOUSANDS OF FREE BLOGGER TEMPLATES »

12 Ekim 2008 Pazar

Visual basic freevbcode

visual Basic ve Diğer diller için kaynak yabancı bir site

http://www.freevbcode.com/


Buda bir başka http://www.csmsu.com/ajax/index4658.html?page=2

14 Nisan 2008 Pazartesi

visual basic de VERİ ERİŞİM YÖNTEMLERİ

VERİ ERİŞİM YÖNTEMLERİ

Veri erişim yöntemleri (data access object) programlama aracılığıyla veri tabanı dosyalarına erişmek için kullanılırlar.


VERİ ERİŞİM YÖNTEMLERİ

DAO (Data Access Objects)
RDO (Remote Data Objects)
ADO (ActiveX Data Object)
VB - SQL


VBSQL

Microsoft SQL server için geliştirilmiş bir arabirimdir.
Microsoft SQL Server ve Sybase SQL Server’ a erişim sağlar.


DAO

Microsoft Jet veritabanına erişmek için geliştirilmiş ilk nesne temelli arabirimdir.
ISAM ve ODBC veritabanlarına erişim için kullanılır.


RDO

Remote Data Object, ODBC üzerinden ilişkisel verilere erişim için kullanılır.
Jet ve ISAM veritabanlarına erişim için kullanılmaz.


ADO

ActiveX Data Object veri erişim yöntemi OLE DB ‘ ye arabirim olan bir veri erişim yöntemidir. OLE DB ve ODBC sürücülerini kullanılır.


ODBC

Çok sayıda ilişkisel veritabanına erişim için geliştirilmiş bir arabirimdir.
Nesne temelli erişimlerde kullanılır.


OLE DB

Alt düzey bir veri erişim yöntemidir.
Her hangi bir veri tabanı tipi ile sınırlı değildir.
ODBC’ nin gelişmiş biçimidir.

Yerel ve Uzak Veritabanı

Verilere dosya sistemi aracılığıyla erişiliyorsa yerel veritabanından erişim sağlanıyor demektir. Uzak veriler ise uygulamanın yanısıra başka bir işlem ile ulaşılan verilerdir.
Clint / server uygulamaları aracılığıyla uzak verilere erişilebilir.



CURSOR TİPLERİ

Veri erişim nesnesinin, cursor tipi verilere erişimin şeklini belirlemek ve erişim performansını arttırmak için kullanılan öğedir.


CURSOR TİPLERİ

Dynamic Cursor
Keyset Cursor
Static Cursor
Forward – Only Cursor


CURSOR TİPLERİ
Dynamic Cursor

Diğer kullanıcılar tarafından yapılan eklentilerin görülmesini sağlar.
Veri seti üzerinde yapılan tüm değişiklikleri izin verir.


CURSOR TİPLERİ
Keyset Cursor

Diğer kullanıcıların eklediği kayıtların görülmesini engeller.
Recordset içindeki her türlü harekete izin verir.


CURSOR TİPLERİ
Static Cursor

Belli bir verinin bulunması ya da raporların üretilmesi için kullanılacak veri setinin değişmeyen bir kopyasını yaratır. Veri nesnesi üzerindeki her türlü harekete izin verir.


CURSOR TİPLERİ
Forwart - Only Cursor

Sabit gösterici gibi çalışır. Kayıtlar arasında sadece ileriye doğru hareket eder.



ODBC(Open Database Connectivity)

Visual Basic kullanarak yerel ve uzak clint/server veritabanlarına erişmek için bir yöntemdir.ODBC ile SQL server ya da diğer uyumlu birçok sunucuda duran verilere erişmek mümkündür.


ODBC Sürücüsünün Temel Görevleri

Veri tabanına Bağlantıyı sağlar
SQL deyimlerini hazırlar ve işletir
Sonuç bilgiyi üretir.
Uygulama hataları hakkında bilgi verir.


ODBC Mimarisi

Uygulama : ODBC fonksiyonlarını çağırarak onları SQL deyimlerine gönderir ve sonuçları elde eder.

Sürücü Yöneticisi : Bir uygulama yerine sürücüleri yükler.

Sürücü : ODBC fonksiyon çağırmalarını işler. SQL deyimlerini belli verilere yönlendirir.

Veri kaynağı : Kullanıcının erişeceği veri


ODBC Sürücüleri

Tek Katlı(Single Tier) : Hem ODBC çağrılarını hemde SQL deyimlerini işler.Daha çok SQL olmayan veri tabanları için kullanılıar.

Çok Katlı (Multiple tier): Sürücü isteğini hizmet birimine (server) gönderir. Bu istek SQL ya da özel veritabanı biçiminde olabilir.


ODBC Veri Erişimi

ODBC veritabanına bağlanabilmek için;
Kaynak veri adı

Sürücü ve diğer ilgili yazılım (Gerekli olan DLL’ lerdir.)

Time-out değeri (Login Timeout değeri, ODBC hizmet biriminden gelen yanıtın beklendiği süreyi belirtir. Query Timeout değeri sorgunun tanımlanması sırasında bekleme süresini belirler.)



ODBC DSN leri

System DSN : Win NT de kullanılır. Bütün uygulamalar ve servisler ulaşabilir.

File DSN : Bilgisini Text dosyada saklar (INI) Bu dosya veritabanı sürücüsü ve yeri hakkında bilgi içerir.

User DSN : Belli bir kullanıcı profili için kullanılır. DSN bilgisi lokal bilgisayarın registry’ sinde saklanır.

ADO VERİ ERİŞİMİ

ADO
(ActiveX Data Objects)
VERİ ERİŞİMİ

ADO

ADO clint uygulamaların server veri tabanlarına erişimini ve veri işlemesini sağlar.

Web uygulamaları ve clint/server uygulamaları geliştirmek için kullanılan ADO, OLE db veya başka provider’ ı kullanır.

ADO hiyerarşik olmayan ve bağımsız olarak kullanılan nesneleriyle verilere kolayca ulaşmayı sağlar

Daha iyi performans sağlamasının yanı sıra daha az sistem kaynağına gereksinim duyar.

Hızlı çalışarak veri tabanı uygulamalarının daha etkin kullanımını sağlar.

ADO verileri OLE DB aracılığıyla sağlar. ADO için data provider OLE DB dir.


ADO’ nun clint/server ve web uygulamaları için yeni özellikleri

 Düz ve basit nesne modelidir. Karmaşık nesnelerin kullanılması gerektiğinde daha verimli kullanılmasını sağlar.
 Bağımsız oluşturulan nesneler. DAO ve RDO da olduğu gibi hiyerarşik gösterimin aksine ADO nesneleri bağımsız yaratılır.
 Clint tarafından kullanılabilecek cusor kütüphanesine sahiptir. Seek, Find ve Sort metotlarını destekler.
 Stored procedure’ ları giriş ve çıkış parametreleriyle destekler.


ADO NESNELERİ

Command : Bir veri kaynağı üzerinde bir sorgu ya da deyimi işletir. Sorgu tanımının saklanmasını sağlar. SQL cümlesi, stored procedure,tablo adı ya da komut metni parametrelerini içerir.

Connection : Bir veri kaynağına doğrudan bağlantı kurar. Data provider hakkında bilgi verir. Cursor type, Connect string, sorgu ve komut zamanı ve diğer ADO özelliklerine sahiptir.

Error : Veri kaynağında oluşan bir hatayı geri döndürür.

Field : Bir kayıt içindeki alanı belirtir.

Parameter : Çalışacak bir komut için parametre tutar. Parmetreli Command nesnesi için parametre belirler.

Recordset : Bir komut tarafından üretilen verileri içerir.Bir query sonucu dönen bir ya da daha fazla kaydı gösterir.Bir kayıt seti bir bağlantı yaratmadan da açılabilir. Ancak bir bağlantı (Connection) oluşturulursa, bu bağlantıya göre birden fazla kayıt seti oluşturulabilir.


Recordset Nesnesi ile Access veri tabanına erişim

Dim rst As New ADODB.Recordset
rst.Open “select * From ogrenciler”, “DSN=ADRESLER”, adOpenKeyset
Set DataGrid1. DataSource = rst


ADO NESNELERİ
Connection

Bu nesne veri kaynağına bağlantı kurmak için kullanılır.
Connection nesnesi sayesinde bir data provider aracılığıyla (OLE DB) bir komut işletilir.
Connection nesnesi ile ConnectionString özelliği kullanılır. Bu özellik bağlanılacak veri kaynağını gösterir Open metodu ise bağlantıyı açar.

Connection Nesnesinin Özellikleri

CommandTimeout : Komutun bekleme zamanı
ConnectionString : Veri kaynağını gösterir
ConnectionTimeout : Bağlantı için bekleme zamanı,
CursorLocation : Bir Server yada client taraflı cursor yaratır
Errors : Hataları tutar
Mode : Bağlantının erişim izinlerini düzenler. Yada programa döndürür.

CursorLocation Özelliği

Data provider’ e erişim düzenleyerek verilere erişim biçimini değiştirir.
Cursor istekte bulunan uygulamaya veriyi döndüren küçük bir yazılımdır.
Veri setinin konumunu izleyerek çok sayıda işlemin aynı anda yapılmasını sağlar
CursorLocation özelliğinin düzenlenmesi; düzenleme işleminden sonra olan bağlantıları etkiler.
Bir Recordset için belirtilmişse aktif connection’ ın özelliği yenilenir.


CursorLocation Değerleri

adUseClient : Yerel cursor kütüphanesi tarafından sağlanır.

adUseServer : Varsayılan olarak kullanılır. Data provider ya da veritabanı sürücüsü tarafından sağlanılan cursor.



Mode Özelliği

Bağlantı ile elde edilen veriler üzerinde değiştirme izinlerini belirtir.
Mode özelliği Connection nesnesi kapalıyken kullanılır.

adModeUnknown : İzin düzenlenmemiş. (0)
adModeRead : Read-Only izinler (1)
adModeWrite : Write – only iznler (2)
adModeReadWrite : Read/Write izinler (3)
adModeShareDenyRead : Diğer kullanıcıların bağlantıyı read iznini engeller (4)
adModeShareDenyWrite : Diğer kullanıcıların bağlantıyı write iznini engeller (8)
adModeShareExclusive : Diğer kullanıcıların bağlantıyı açmasını engeller(12)
adModeShareDenyNone : Diğer kullanıcıların bağlantıyı herhangi bir izinle açmasını engeller.(16)


Connection Metotları

BeginTrans : Aktif connection üzerinde yeni bir transaction’ a başlar.
Cancel : İşlemekte olan komutu iptal eder.
Close : Aktif bağlantıyı kapatır.
CommitTrans : Mevcut transaction işlemini tamamlar.
Execute : Bağlantıya ait bir komutu başlatır.
Open : Bir bağlantıyı açar.
RoolbackTrans : Mevcut trasaction’ u geri alır.


Connection Metotları

Execute metodu aktif connection üzerinde bir komutu çalıştırır. Bu komut genellikle SQL UPdate komutu gibi bir satır olarak veri elde etmeyen komutların işletilmesi için kullanılır.

Set recordset = connection.Execute (CommandText, RecordAffected, Options)

CommandText : Bir string değeridir. Bir SQL deyimi, tablo adı, storedprocedure içerir.
RecordsAffected : İşlemden etkilenen kayıt sayısını döndürür.
Options : Provider’ ın CommandText’ i nasıl işleyeceğini belirtir.











CommandText Değerleri

adCmdText : Komut metninin text olarak değerlendirilmesini sağlar.
adCmdTable : Tablodaki bütün kayıtlar için SQL sorgu kullanılması. Komut metninin bir tablo adı olarak değerlendirilmesi
adCmdTableDirect : Provider’ın tablodaki bütün kayıtları döndürmesi
adCmdStoredProc : Komut metninin bir stored procedure olarak değerlendirilmesi,
adCmdUnknown : Komut metni argümanının bilinmemesi
adExecuteAsync : Komutun zaman uyumsuz olarak işletilmesi
adFetchAsync : CacheSize özelliği ile belirtilen miktarın dışında kalan satırları belirtir.

SQL Veri Tabanına Bağlanma

Dim cnn as New ADODB.Connection

Cnn.Open “driver={SQL server};Server=;
uid=;pwd=;database=

Access Veri Tabanına Bağlanma

Dim cnn as New ADODB.Connection

With cnn
.ConnectionString=“c:\x\adresler.mdb”
provider = “Microsoft.Jet.OLEDB.3.51”
Open
End With

DSN Kullanarak Veri Tabanına Bağlanma

Dim cnn as New ADODB.Connection
With cnn
.mode=adModeReadWrite
CursorLocation = adUseServer
Open”ADRESLER”
End With


ADO NESNELERİ
Error

ADO’ yu içeren bir işlemde oluşan veri erişim hatalarının ayrıntısını içerir.
Description : Hatanın metnini içerir.
Number : Hatanın değerini gösterir
Source : Hataya neden olan nesneyi belirtir.
HelpFile HelpContext : Hata için uygun Microsoft Windows Help dosyalarını belirtir.
SQLState NativeError : ODBC veri kaynakları hakkında bilgi sağlar.


ADO NESNELERİ
Command

• Command nesnesi bir bağlantı üzerinde işletilecek özel bir sorgu ya da komut yaratmak için kullanılır.
• Bir komut nesnesi bir bağlantı üzerinde bağımsız olarak yaratılır. İşletilmeden önce veri kaynağına bağlı olan aktif bağlantı(connection) ile ilişkilendirilir.
• Command nesnesi ile bir veri kaynağına karşı işletilmek için kullanılacak bir komut yaratılır.
• Bu nesneler, bir recordset nesnesinin yaratılması ve kayıtların elde edilmesi için kullanılır.

Command nesnesinin özellikleri

Active Connection : İlgili bağlantıyı döndürür. Açık bir bağlantıyla bir komut nesnesi birleştirilebilir.
Command Text : Komut nesnesi. Komutun metinsel tanımını içerir.Özelliğin içeriği kullanıcıya özeldir. Command Type özelliğinin değerine göre ADO, Commad Text özelliğini değiştirebilir

Command nesnesinin özellikleri

Command Timeout : İşlenecek komutu bekleme süresi Bekleme süresi sn cinsinden belirtilebilir. Eğer komut bu sürede işletilemezse hata oluşur.
Command Type : İşlenecek komut tipi.
Performansı arttırmak için komutun çalıştırılmasından hemen önce komut metninde belirtilen komutun tipi belirtilir.

CommandType Özelliğinin Değerleri

AdCmdText : CommandText değerinin bir metin olarak değerlendirilmesini sağlar (1)
AdCmdTable : CommandText’ in bir tablo içermesini sağlar (2)
AdCmdStoredProc : CommandText’ in bir stored prosedürü içermesini sağlar (4)
AdCmdUnknown : CommondType bilinmiyor. (8)(varsayılan)
AdCmdFile : Verilerin dosyadan alınmasını sağlar (256)

Command nesnesinin özellikleri

Name : Bağlantı tipinin adı. Bir komut işletildiğinde dinamik bir bağlantının oluşturulmasını sağlar.
Parameters : Parameter nesnelerinin birleşimi
Prepared : Komutun derlenmiş olması
Properties : Özellikler birleşimi







Command nesnesinin özellikleri

Cancel : Bir command’ ın işletimin iptal eder.

CreateParameter : Bir parametre nesnesi yaratır.

Execute : Bir komutu ya da sorguyu işletir.


ADO NESNELERİ
Parameter

Parameter nesnesi ile Command nesnesi birlikte parametreleri ve argümanları temsil eder.

Çağrılmak istenen parametrik sorgu yada saklanmış prosedure’ ın parametrelerinin isimleri ve özellikleri biliniyor ise CreateParameter metodu ile parametre nesnesi yaratılabilir.


ADO NESNELERİ
Recordset

Recordset nesnesi veri kaynağından gelen verileri içerir.
Recordset nesneleri aktif connection ve command ile oluşturulur.
Recordset nesnesi bir tablonun bütün kayıt kümesini veya çalıştırılan bir komutun sonuçlarını içerir.
Kaydın yönetilmesi için kullanılırlar, kayıtlardan ve alanlardan oluşurlar. Birden fazla Recordset nesnesi oluşturularak aynı kayıt kümesi üzerinde çalışılabilir.
Recordset nesnesi yaratılırken kullanılacak cursor tipleri;

• Dynamic Cursor
• Keyset Cursor
• Static Cursor
• Forward-only Cursor

Recordset açılmadan önce Cursor Type özelliği ayarlanır.(Defult değer Forward-only dir)
Recordset ilk yaratıldığında ilk kaydı gösterir. Bu anda ;
BOF(Begining of file-Dosya başı) ve EOF (End of file- Dosya sonu) değerleri false dır.


Recordset Tanımlaması

Dim rst As New ADODB.Recordset
Rst.Open “select *From OGRENCILER”, “DSN=ADRESLER”, adOpenKeyset,adLockOptimictic



Recordset’in DataGrid’ Gösterilmesi

Dim cnn As New ADODB.Connection
Dim cmd As New ADODB.Command
Dim rst As New ADODB.Recordset
With cnn
.CursorLocation=adUseServer
.Open “ADRESLER”
End With
With cmd
.CommandText =“Select * From OGRENCILER”
Set .ActiveConnection=cnn
End With
With rst
.CursorType=adOpenDynamic
.LockType=adLockOptimistic
.Open cmd
End With
Set DataGrid1.DataSource=rst

Recordset Özellikleri

AbsolutePage : Kayıt seti içindeki mutlak sayfayı döndürür. (Varsayım= -1; Aralık >=0)
AbsolutePosition : Aktif kaydın mutlak konumunu döndürür. (Varsayım = -1; Aralık= >=0)
ActiveCommand : Aktif komutu verir. (Varsayım = yok; Aralık= Komut nesnesi)
ActiveConnection : Aktif bağlantıyı verir.
BOF :Kayıt göstericisinin birinci, kayıttan önce olmasını sağlar. (Varsayım=True, Aralık =True/False)
Bookmark : Mevcut kaydı belirleyen bilgi. (Provider’ a bağlı)
CacheSize : Önbelleğe atılacak kayıt sayısını düzenler.(Aralık >=1)
CursorLocation= Göstericinin yerini düzenler. (Provider’ a bağlı)
CursurType : Cursor tipini verir. (Varsayım =Forward-only)
EditMode : Mevcut kaydın değiştirilme durumunu veririr. (Varsayım = adEditNone)
EOF : Kayıt göstericisinin son kayıtta olmasını sağlar. (Varsayım=True, Aralık True/False)

Fields : Veri alanlarını içeren bileşim nesnesi.
Filter . Filtre değeri (Varsayım = adFilterNone)
LockType : Kayıt kilitlemeyi düzenler. (Varsayım = adLockRead)
MaxRecords : Alınacak kayıt sayısını düzenler. (Varsayım =0, Aralık = >=0)
PageCount : Sayfa sayısını verir. (Varsayım =0, Aralık = >=0)
PageSize : Bir sayfadaki kayıt sayısını verir. (Varsayım =1, Aralık = >=0)
Sort : Kayıtların sıralama düzenini belirler.
Source : Komut kaynağını verir.
State : Recordset’in mevcut durumunu verir. (Varsayım =adStateClosed)
Status : Kayıtların Güncellenme durumunu ayarlar.

Bir recordset’in özelliklerinin düzenlenmesi için önce recordset bir connection ya da command ile ilişkilendirilir.
Recordset Özellikleri
LockType

Recordset’ in kilitlenmesi için kullanılır.
adLockReadOnly : 1 Verileri sadece okunur duruma getirir. Değiştirilemezler.
adLockPessimistic : 2 Üzerinde işlem yapılan veriler satır bazında kilitlenir. Başkaların erişimi engellenir.
adLockOptimistic: 3 Üzerinde işlem yapılan veriler kilitlenmez.Başkalarının erişimi kontrol edilir.
adLockOptimistic Batch : 4 Değişikliklerin toplu şekilde yapılmasını sağlar.


Recordset Özellikleri
Bookmark

Recordset içerisindeki mevcut bir kaydın konumunu kaydeder. Daha sonra istenildiğinde bu konuma kaydın geri dönmesini sağlar.

Dim yerimi as variant
Private sub kaydet_Click()
yerimi =rst.Bookmark
End Sub
Private sub GeriDön_Click()
rst.Bookmark = yerimi
End Sub


Recordset Metotları

AddNew :Yeni bir kayıt ekler
Cancel :Mevcut işlemi iptal eder.
CancelBatch : İşlenecek kayıt kümesini iptal eder.
CancelUpdate : Mevcut kayıda yapılacak olan değişiklikleri ya da eklemeleri iptal eder.
Clone : Mevcut recordset’i kopyalar.
Close : Aktif recordset’ kapatır.
Delete : Bir ya da çok sayıda kaydı siler.
Find : Bir kaydı bulur.
GetRows : Bir kayıt kümesini iki boyutlu bir diziye kopyalar.
GetString : Kayıtları bir text string olarak döndürür.
Move : Belli bir kayda recordset’in konumlanmasını sağlar.
MoveNext : Recordset’in bir sonraki kayda gitmesini sağlar.







Recordset Metotları

MoveFirst : Recordset’in ilk kayda gitmesini sağlar.
MoveLast : Recordset’in en son kayda gitmesin sağlar.
NextRecordset :Birleşik bir komut içindeki bir sonraki recordset’i açar.
Open : Bir komutu işletir ve cursor’ ı açar.
Requery :Bir komutu yeniden işletir ve recordseti yeniden oluşturur.
Resync : Ön belleğe alınan kayıtları siler.
Save : Açık bir recordseti bir dosyaya kayıt eder. Bu dosya daha sonra açılabilir.
Supports : Recordsetprovider’ın hangi cursor seçeneklerini desteklediğini belirtir.
Update : Yapılan değişiklikleri kayıt eder.
UpdateBatch : Veri kaynağı üzerindeki bir grup güncelleme işlemini yapar.


SQL Server Üzerinde Bir Recordset Nesnesinin Connection Nesnesi ile Yaratılması

Dim rst As New ADODB.Recordset
Dim cnn As New ADODB.Connection
Cnn.Open “driver={SQL Server};Server=svrsql; uid=sa; pwd=; database=adresler”
Rst.Open “SELECT * FROM OGRENCILER”, cnn, adOpenKeyset; adLockOptimistic
Set DataGrid1.DataSource= rst

Microsof Access Üzerinde Bir Recordset Nesnesinin Connection Nesnesi ile Yaratılması ve Doldurulması

Dim rst As New ADODB.Recordset
Dim cnn As New ADODB.Connection
Cnn.Open “ADRESLER”
Rst.Open “SELECT * FROM OGRENCILER”, cnn, adOpenKeyset; adLockOptimistic
Set DataGrid1.DataSource= rst


SQL Server Üzerinde Bir Recordset Nesnesinin Command Nesnesi ile Yaratılması ve Doldurulması

Dim rst As New ADODB.Recordset
Dim cnn As New ADODB.Connection
Dim cmd As New ADODB.Command
Cnn.Open “driver={SQL Server};Server=svrsql; uid=sa;pwd=;database=adresler”
With cmd
.CommandText =Select * Form OGRENCILER”
Set.ActiveConnection= cnn
End With
Rst.Open cmd, , adOpenKeyset; adLockBatchOptimistic
Set DataGrid1.DataSource= rst

8 Nisan 2008 Salı

proje kronometrem visual basic visula stido da kronometre programı


Kronometre Uygulaması

Bu labı tamamladıktan sonra:
· Form ve üzerindeki kontrollerin görünüm özelliklerini öğrenecek,
· ComboBox, ListBox kontrollerine öğe ekleyebilecek,
· TextBox kontrolünden değer okuyabilecek,
· Timer kontrolünün çalışma şeklini öğreneceksiniz.

Form üzerine kontrollerin eklenmesi, biçimlendirin yapılması


1. “Kronometre” isminde yeni bir Windows projesi açın.
2. Properties panelinden, Form1 nesnesinin BackColor özelliğini “Menu” olarak seçin. Font özelliğini, yanındaki + tuşuna basarak genişletin. Font özelliğinin alt özellikleri listelenir.
· Name özelliğini Tahoma,
· Text özelliğini “Yazılım Uzmanlığı Kronometre Uygulaması”,
· Size özelliğini 10 olarak ayarlayın.
Form görünüm özellikleri, eklenecek kontrollerin (değiştirilmedikleri sürece) görünümlerini de etkiler.
3. Toolbox panelinden Form üzerine bir Label ekleyin. Özelliklerini atayın:
· Text: Kronometrem
· Font – Name: Forte, Font – Size: 28
· Dock: Top
· TextAlign: BottomCenter
4. Bir Label kontrolü ekleyin. Özelliklerini atayın:
· Text: 0
· Font – Size: 30
· TextAlign: MiddleCenter
· Name: lblSure
5. Forma bir Timer kontrolü ekleyin. Name özelliğini tmrKronometre olarak değiştirin.
İPUCU: Kod tarafında kullanacağınız kontrollerin isimlerini değiştirmek, daha sonra ulaşmak için zaman kazandıracaktır.
6. Bir ComboBox ekleyin. Text özelliğini “Hız Seçin” olarak, Name özelliğini de cmbInterval olarak değiştirin. Items Collection içine sırayla 1000, 2000, 3000, 4000 değerlerini girin.
Bu kontrol, çalışma anında Timer kontrolünün Interval özelliğini değiştirmeyi, dolayısıyla kronometrenin hızını ayarlamayı sağlayacak.
7. Biri “Dur”, diğeri “Başla” Text özelliklerine sahip iki Button ekleyin. Kontrollerin Name özelliklerini sırayla btnDur ve btnBasla olarak değiştirin.
8. Bir ListBox kontrolü ekleyin ve Name özelliğini lbKayit olarak değiştirin. Bu kontrol kronometrenin başlama ve durma zamanlarını kaydetmeyi sağlayacak.
9. Bir TextBox kontrolü ekleyin. Name özelliğini txtSure olarak değiştirin ve Text özelliğinde yazan yazıyı silin.
10. Eklenen kontrolleri, resim (Resim numarası) de görünen şekilde düzenleyin.

Kodların yazılması

1. Formun üzerine sağ tıklayın ve View Code komutunu seçin.
2. Açılan kod sayfasında, KalanSure isimli bir değişken tanımlayın.

public int KalanSure;

3. Formun tasarım görünümüne dönün ve Başla isimli Button kontrolüne çift tıklayın. btnBasla_Click yordamı içine Timer kontrolünü ayarlayıp başlatan, ListBox kontrolüne kayıtları giren, kalan süreyi Label kontrolünde görüntüleyen kodları yazın.

private void btnBasla_Click( System.Object sender, System.EventArgs e ) {
// Başlangıç zamanı "KalanSure" değişkenine atanır.
KalanSure = System.Convert.ToInt32( txtSure.Text );

// Kalan süre kullanıcıya gösterilir.
lblSure.Text = System.Convert.ToString( KalanSure );

// ListBox kontrolüne kayıt girilir.
lbKayit.Items.Add( "Kronometre balad: " + DateAndTime.Now.TimeOfDay.ToString() );

// ComboBox kontrolünden seçilen değer,
// Timer kontrolünün çalışma hızını belirler.
tmrKronometre.Interval = System.Convert.ToInt32( cmbInterval.Text );

// Timer kontrolünü çalıştırır.
tmrKronometre.Start();
}

4. Dur isimli Button kontrolüne çift tıklayın. btnDur_Click yordamı içine Timer kontrolünü durduracak ve ListBox kontrolüne kayıtları ekleyecek kodları yazın.

private void btnDur_Click( System.Object sender, System.EventArgs e ) {
// Timer kontrolünü durdurur.
tmrKronometre.Stop();

// ListBox kontrolüne kayıt girilir.
lbKayit.Items.Add( "Kronometre durduruldu: " + DateAndTime.Now.TimeOfDay.ToString() );
}

5. Tasarım görünümünde tmrKronometre isimli Timer kontrolüne çift tıklayın. tmrKronometre_Tick yordamı içine kalan süreyi azaltacak ve süre sıfırlandığında kronometreyi durduracak kodları yazın.

private void tmrKronometre_Tick( System.Object sender, System.EventArgs e ) {
// Her saniye geçtiğinde sure değeri 1 azalacaktır.
KalanSure = KalanSure - 1;

// KalanSure değeri kullancıya gösterilir
lblSure.Text = System.Convert.ToString( KalanSure );

// KalanSure değeri sıfıra ulaşmışsa kronometre durdurulur.
if ( KalanSure == 0 ) {
tmrKronometre.Stop();
lbKayit.Items.Add( "Süre Doldu: " + DateAndTime.Now.TimeOfDay.ToString() );

MessageBox.Show( "Süre doldu" );
}
}

6. Projeyi başlatın, metin kutusuna 5 değerini girin. Hız Seçin açılan kutusundan 1000 değerini seçin ve Başla düğmesine basın.
· Süre başladıktan ve bittikten sonra ListBox kontrolündeki değişiklikler nelerdir?
· Hız 3000 olarak seçildiğinde başlama ve bitiş zamanları arasındaki süre ne kadardır?
Konu 4: MessageBox

MessageBox, kullanıcıya bilgi göstermek için açılan mesaj kutusudur. Bu mesaj kutusu dört öğeden oluşur.
· Text (Yazı): Mesaj kutusunda verilmek istenen bilgiyi tutan yazıdır
· Caption (Başlık): Mesaj kutusunun başlığıdır
· Buttons (Düğmeler): Mesaj kutusunda hangi düğmelerin gösterileceğini belirler.
· Icon (Simge): Mesaj kutusunda gösterilecek olan simgeyi ve açıldığı zaman çıkartılacak sesi belirler.

MessageBox.Show("Devam etmek istiyor musunuz?", "Uyarı", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
Mesaj kutusu, kapanırken hangi düğmenin basıldığını DialogResult nesnesi ile programcıya bildirir.

if(MessageBox.Show("Değişiklikler kaydedilsin mi?", "Kayıt", MessageBoxButtons.YesNoCancel) == DialogResult.Cancel)
{
// İptal tuşuna basıldığı zaman
// buraya girilir.
}

11 Şubat 2008 Pazartesi

VİSUAL BASİC DOWNLOAD BÖLÜMÜ


VİSUAL BASİC İNDİR



HAZIR VİSUAL BASİCC KODLARI İNDİR

Visual Basic 6.0 ile yapilan bazi programlarin Windows isletim sisteminde çalismasi için bazi dosyalara ihtiyaci vardir. Bu program iste bu programlarin çalismasi için gerekli olan dosyalari içerir.
İNDİRMEK İÇİN TIKLA


İNDİR

visual basicc video anlatım

visual basicc oyun yapımı



animasyon

Visual Basicte Basit bir Telefon Programı visual basicc

Numara kaydedebilen telefon programı

'Bu Program bekir demir tarafından genel amaçlı olarak yazılıp kopyalanması ve dağıtılması yasak degildir
Option Explicit

DefInt A-Z

Dim CancelFlag

Private Sub CancelButton_Click()
CancelFlag = True
CancelButton.Enabled = False
End Sub

Private Sub Dial(N$)
Dim DialString$, FromModem$, dummy

DialString$ = "ATDT" + N$ + ";" + vbCr

' Bağlantı Port ayarları
MSComm1.CommPort = 3
MSComm1.Settings = "9600,N,8,1"

' Bağlantı portunu aç
On Error Resume Next
MSComm1.PortOpen = True
If Err Then
Exit Sub
End If

MSComm1.InBufferCount = 0

'Numarayı çevir
MSComm1.Output = DialString$

' modeme geri dönmek için tamamı bekle
Do
dummy = DoEvents()
If MSComm1.InBufferCount Then
FromModem$ = FromModem$ + MSComm1.Input
' Tamam'ı Kontrol et
If InStr(FromModem$, "OK") Then
'Kullanıcı telefonu kaldırırsa
Beep
MsgBox "Lütfen Ahizeyi Kaldırıp ENTER a Basın"
Exit Do
End If
End If

' Kullanıcı iptali seçerse
If CancelFlag Then
CancelFlag = False
Exit Do
End If
Loop

' Modemle bağlantıyı kes
MSComm1.Output = "ATH" + vbCr

' Portu kapat
MSComm1.PortOpen = False
End Sub

Private Sub Command1_Click(Index As Integer)
Durum.Text = Durum.Text + Command1(Index).Caption
End Sub

Private Sub Command2_Click()
Text1.Visible = False
Text2.Visible = False
Command2.Visible = False
End Sub

Private Sub Command3_Click()
Durum.Text = Num.Caption
Command4.Visible = True
End Sub

Private Sub Command4_Click()
Data1.Refresh
Command4.Visible = False
Command3.Visible = True

End Sub

Private Sub Data1_Validate(Action As Integer, Save As Integer)
On Error Resume Next
End Sub

Private Sub DialButton_Click()
Dim N$, T$

DialButton.Enabled = False
QuitButton.Enabled = False
CancelButton.Enabled = True
' Çevirmek için gerekli numara
N$ = Durum.Text

T$ = Durum
Durum = "Çevriliyor - " + N$

' Çevrilecek Telefon Numarasını Seç
Dial N$

DialButton.Enabled = True
QuitButton.Enabled = True
CancelButton.Enabled = False

Durum = T$
End Sub

Private Sub Form_Load()
MSComm1.InputLen = 0

End Sub

Private Sub Kay_Click()
Data1.Recordset.AddNew
Text2.Visible = True
Command2.Visible = True
Text1.Visible = True
End Sub

Private Sub Label1_DblClick()
Data1.Refresh
End Sub

Private Sub Label4_Click()

End Sub

Private Sub QuitButton_Click()
End
End Sub

Private Sub Sil_Click()
On Error Resume Next