text box'a yazı yazdırma

Başlatan MICROCEBEL, 14 Mayıs 2006, 01:17:20

MICROCEBEL

Selamün aleyküm arkadaşlar;

Visual basic öğrenmeye yeni başladım.
Fakat takıldığım nokta şu;
bir tane buton koydum command1 ekrana vede 3 tane text1,text2,text3.Butona ilk bastığımda text1 de "İLK" 2. bastığımda "PROGRAM"3. basışımda iste "visual" nasıl yazdırabilirim.Bi denem yaptım fakat butona bikere bastığım gibi hepsi bir anda yazıyor.
----------------------------------------------------------------------------
Private Sub Command1_Click()
Dim a
For a = 0 To 3
If a = 1 Then
Text1.Text = "ilk"
End If
If a = 2 Then
Text2.Text = "program"
End If
If a = 3 Then
Text3.Text = "visual"
End If
Next
End Sub

ground

Visualbsic çok bilmesemde..

Bir a değişkeni açmışsın iyi güzel..

Fakat her butona bastığında a değişkenini 1 arttırmalısın..

a = a+1 gibi..


birde 3 sayısının işlemi yapıldığında ekrana yazdırma işleminden sonra
a = 0 ile bunu sıfırla.. 4. basışında ilk işleme dönsün..
⌒╮'╭⌒╮⌒╮.
╱◥██◣                  
| 田︱田田|              
╬╬╬╬╬╬╬╬╬

Picproje - Sözde değil özde paylaşım..

MICROCEBEL

genede olmadı yaa denedim ama.Bana açık örnek lazım programı yazabilecek biri yokmu.

engin_

Dim a
yerine
Static a As integer
yazarsan düzelir.

Edit:
İyice sapıttım. Ben biraz uyuyayım.

Arkadaşım for dngüsüne girmişsin haliyle a bütün değerleri alıyor.

Yapacağın her butana basma durumunda a yı artırmak.

Private Sub Command1_Click()
Static a=0
a=a+1

If a = 1 Then
Text1.Text = "ilk"
End If
If a = 2 Then
Text2.Text = "program"
End If
If a = 3 Then
Text3.Text = "visual"
End If

End Sub

Bu şekilde olması lazım. Visual basic kullanmayalı 4 ayı geçti. Kötü bir özelliğim var kullanmadığım şeyleri çabuk unutuyorum.
Static a=0 şeklinde tanımlanıyor olması lazım.

engin_

Bu şekilde oluyormuş... a'ya direk 0 değerini veriyor anlaşılan

Private Sub Command1_Click()
Static a as integer
a=a+1

If a = 1 Then
Text1.Text = "ilk"
End If
If a = 2 Then
Text2.Text = "program"
End If
If a = 3 Then
Text3.Text = "visual"
End If

End Sub

SpeedyX

değişkeni Sub altında değilde, yukarıda tanımlasak daha iyi olmaz mı?

Dim a As integer

Private Sub Command1_Click()
	a=a+1
	Select case a
		case 1 : Text1.Text = "ilk"
		case 2 : Text2.Text = "program"
		case 3 : Text3.Text = "visual"
		case 4
			Text1.Text = ""    
	      Text2.Text = ""
	      Text3.Text = ""
	      a = 0
	End Select
End Sub

MICROCEBEL

arkadaşlar çok teşekkürler ilginizden dolayı şimdi mantığını daha iyi anladım..

engin_

@SpeedyX öyle de olur. Fonksiyon içinde Static olarak da tanımlanabilir. Fonksiyon çalıştığında a değişkeni en son aldığı değeri korur.