Visual Basic yardım lazım

eastking

Üye
Katılım
8 Kas 2008
Mesajlar
42
Puanları
1
Yaş
37
selamlar,

sorum şu, 3 tane label oluşturduğumuzu düşünün,

label1 label2 label3

sonra userdan textbox1 e bir sayı girmesini istiyoruz,

diyelimki 65 girdi ve command buttona bastı

böylece bu sayı random olarak üç labeldan birinde gözükecek

ben şöyle düşündüm ama olmadı.

dim a as integer
dim i as integer
a = text1.text
i = int(rnd*(3))
label(i).caption = a


fakat son satırda sanırım bir hata var ve çalışmıyo label1.caption yazınca atama yapıyor ama rastgele bir label a atama yapamıyorum yardımcı olursanız sevinirim

teşekkürler
 
dim etiket
sayac = 0
for each etiket In Me.Controls
if TypeOf etiket Is Label then
etiket.caption = " "
sayac = sayac + 1
if sayac = i then etiket.caption = a
endif
next

böyle bişey olması lazım. Ama başka label varsa sorun çıkabilir. Labellara ayrıca başka bir eğer ifadesiyle ayrım oluşturmak gerekebilir. Anahtar kod "Me.Controls".
 
Merhaba,

Rnd her zaman sıra ile aynı sayıları üretir, bunu daha rastgele hale getirmek için fonksiyonunuzun başına

Randomize Timer

yazın.
 
Bir şey daha var,

Label1, Label2, Label3

yaptığınız zaman, her üçü de birbirinden farklı nesneler olacaktır.

Label2 ve Label3 ü silin.

Label1 i seçin, kopyalayıp formunüzerine yeniden yapıştırın. 'Label1 zaten var, Kontrol dizisi mi oluşturmak istiyorsunuz?' anlamında bir soru soracaktır, 'Yes' deyin.

Sonra bir kere daha yapıştırın. Bu sefer sormayacaktır. İstediğiniz kadar yapıştırabilirsiniz.

Ardından

Label1(Index).Caption = ...

şeklinde kullanabilirsiniz.
 

Forum istatistikleri

Konular
129,903
Mesajlar
931,169
Kullanıcılar
452,787
Son üye
Azemm333
Geri
Üst