Payidar.NET - Bilgi ve Paylaşım Forumu
Go Back   Payidar.NET - Bilgi ve Paylaşım Forumu > Bilgisayar, Elektronik ve Network > Programlama Dilleri > Visual Basic .NET

Duyurular

Cevapla
 
LinkBack Konu Seçenekleri Gösterim Modu
  #1 (Daim)  
Alt 22.03.08, 22:30
Paylaşımcı
 
Üyelik Tarihi: 09.03.07
Şehir: mersin-ankara
Mesajlar: 56
Karizma Puanı: 69
megalo17 has a spectacular aura aboutmegalo17 has a spectacular aura aboutmegalo17 has a spectacular aura about
VB, butona basınca buton üretme nasıl olur






iyi akşamlar arkadaşlar,

ben 1 aydır visual basic öğreniyorum(zorunlu ders). ama çok uğraşmama rağmen şunu beceremedim:

Mesela resimdeki button1 e her basışımızda yeni bir buton üretecek teker teker şu kod bir tane üretiyor fakat button1 e tekrar bastığımda üretmiyor loop döngüsü filan mı olacak?

Kod:
KOD:

 Private Sub Button1_Click()
        Dim i As Double
        For i = 0 To 0
            Dim btn As New Button()
            Me.Controls.Add(btn)
            btn.Show()
            btn.Top = i * 23
            btn.Name = "Button" & i
            btn.Text = btn.Name
        Next
    End Sub
End Class

Konu megalo17 tarafından (22.03.08 Saat 22:39 ) değiştirilmiştir..
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Alıntı ile Cevapla
  #2 (Daim)  
Alt 23.03.08, 03:39
Wsinf - ait Kullanıcı Resmi (Avatar)
Genel Müdür
 
Üyelik Tarihi: 06.10.06
Şehir: Lodz / poland
Mesajlar: 706
Karizma Puanı: 150
Wsinf has much to be proud ofWsinf has much to be proud ofWsinf has much to be proud ofWsinf has much to be proud ofWsinf has much to be proud ofWsinf has much to be proud ofWsinf has much to be proud ofWsinf has much to be proud ofWsinf has much to be proud of
Ce: VB, butona basınca buton üretme nasıl olur

Istemiş olduğun buton ekleme özelliğini for-next döngüsü haricinde loop döngüsü yapabilir sanırım iç içe döngü kullanılması gerekli ama ben bunu visual studio 2008 de beceremedim onun yerine daha zor ve uzun olan bir yöntem ile yaptım. Yani el ile döngü (manuel loop) yöntemi ile. Yani bir döngüyü yazamadıysak onun yerine döngüyü kendimiz oluştururuz. Hiç birşey imkansız değildir sonuçta.

Öncelikle foruma 6 (çoğaltılabilir) tane aynı boyuta ve aynı isme sahip olan buton ekledim ve bunları sanki tek bir butonmuş gibi üst üste hizaladım isimden kasıt name parametresi değil text parametresidir. isimlerin aynı olmasındaki maksat butonları her click te saklayıp bir alttaki butona geçicek olmamız. Böyle olunca alttaki butonun ismi ve boyutuda aynı olduğu için buton gizlediğimiz belli olmayacak. kodları incelersen daha iyi anlarsın ne demek istediğimi.

Bunların yanında gereksiz yere bellekte fazla yer kaplayacak double yerine integer (tamsayı) kullandım ayrıca yine gereksiz olan me fonksiyonunu da kaldırdım.
eğer eklenicek buton sayısını artırmak istersen üst üste dizdiğimiz butonların üstüne bir buton daha ekle ve kodlamasını aynen yukardakiler gibi yap ancak for i = 0 to x burdaki x değerini 1 azaltmalısın.

Eğer illaki do-loop döngüleri kullanman istenmiyorsa bu fonksiyon çok rahat işini görecektir.


Kodlar:

PublicClass Form1
PrivateSub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim i AsInteger
Dim j AsNew Button()
For i = 0 To 5 'her seferinde 1 artarak en alttaki butona dogru ulasilir
Controls.Add(j)
j.Show()
j.Top = i * 25
j.Name = "Button" & i
j.Text = j.Name
Next
'burada hide ile buto gizlemedik cunki son butonumuzu ekledikten sonra baska buton eklemiyecegimiz icin artik sabit kalmasini istiyoruz.
EndSub


PrivateSub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim i AsInteger
Dim j AsNew Button()
For i = 0 To 4 'her seferinde 1 artarak en alttaki butona dogru ulasilir
Controls.Add(j)
j.Show()
j.Top = i * 25
j.Name = "Button" & i
j.Text = j.Name
Next
Button2.Hide() 'bu butonu kullandik ve isimiz bittigi icin bunu gizleyip alttaki buton ile devam ediyoruzz (manuel loop)
EndSub

PrivateSub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Dim i AsInteger
Dim j AsNew Button()
For i = 0 To 3 'her seferinde 1 artarak en alttaki butona dogru ulasilir
Controls.Add(j)
j.Show()
j.Top = i * 25
j.Name = "Button" & i
j.Text = j.Name
Next
Button3.Hide() 'bu butonu kullandik ve isimiz bittigi icin bunu gizleyip alttaki buton ile devam ediyoruzz (manuel loop)
EndSub

PrivateSub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
Dim i AsInteger
Dim j AsNew Button()
For i = 0 To 2 'her seferinde 1 artarak en alttaki butona dogru ulasilir
Controls.Add(j)
j.Show()
j.Top = i * 25
j.Name = "Button" & i
j.Text = j.Name
Next
Button4.Hide() 'bu butonu kullandik ve isimiz bittigi icin bunu gizleyip alttaki buton ile devam ediyoruzz (manuel loop)
EndSub

PrivateSub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
Dim i AsInteger
Dim j AsNew Button()
For i = 0 To 1 'her seferinde 1 artarak en alttaki butona dogru ulasilir
Controls.Add(j)
j.Show()
j.Top = i * 25
j.Name = "Button" & i
j.Text = j.Name
Next
Button5.Hide() 'bu butonu kullandik ve isimiz bittigi icin bunu gizleyip alttaki buton ile devam ediyoruzz (manuel loop)
EndSub

PrivateSub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
Dim i AsInteger
Dim j AsNew Button()
For i = 0 To 0 'her seferinde 1 artarak en alttaki butona dogru ulasilir
Controls.Add(j)
j.Show()
j.Top = i * 25
j.Name = "Button" & i
j.Text = j.Name
Next
Button6.Hide() 'bu butonu kullandik ve isimiz bittigi icin bunu gizleyip alttaki buton ile devam ediyoruzz (manuel loop)
EndSub
EndClass




Herhangi bir sorunla karşılaşırsan burdan belirtebilirsin. Kolay gelsin.
__________________
Oyun bitince "şah" ta "piyon" da aynı kutuya girer... hesap baslar..

NO TURKISH GIRL

Arkadaşlık teklifi veya guruplara davet göndermeyiniz lütfen.. (Yönetim hariç)

Konu Wsinf tarafından (24.03.08 Saat 07:10 ) değiştirilmiştir..
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Alıntı ile Cevapla
  #3 (Daim)  
Alt 23.03.08, 13:26
Paylaşımcı
 
Üyelik Tarihi: 09.03.07
Şehir: mersin-ankara
Mesajlar: 56
Karizma Puanı: 69
megalo17 has a spectacular aura aboutmegalo17 has a spectacular aura aboutmegalo17 has a spectacular aura about
Ce: VB, butona basınca buton üretme nasıl olur

Kodlar çalışıyor kısıtlı da olsa manual döngü yaratıyor...

Tek butonla otomatik döngüyü artık ileride olur....

""Yardımın için çok teşekkür ederim""
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Alıntı ile Cevapla
  #4 (Daim)  
Alt 23.03.08, 15:56
Wsinf - ait Kullanıcı Resmi (Avatar)
Genel Müdür
 
Üyelik Tarihi: 06.10.06
Şehir: Lodz / poland
Mesajlar: 706
Karizma Puanı: 150
Wsinf has much to be proud ofWsinf has much to be proud ofWsinf has much to be proud ofWsinf has much to be proud ofWsinf has much to be proud ofWsinf has much to be proud ofWsinf has much to be proud ofWsinf has much to be proud ofWsinf has much to be proud of
Ce: VB, butona basınca buton üretme nasıl olur

megalo17 Nickli Üyeden Alıntı Mesajı göster
Kodlar çalışıyor kısıtlı da olsa manual döngü yaratıyor...

Tek butonla otomatik döngüyü artık ileride olur....

""Yardımın için çok teşekkür ederim""
Evet kısıtlı bir manuel döngü var ama eklemek istediğimiz buton sayısıda kısıtlı. 100 falan olmadıkça sorun olmaz. ancak tabiki autoloop yapabıleydik daha güzel olurdu..
__________________
Oyun bitince "şah" ta "piyon" da aynı kutuya girer... hesap baslar..

NO TURKISH GIRL

Arkadaşlık teklifi veya guruplara davet göndermeyiniz lütfen.. (Yönetim hariç)
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Alıntı ile Cevapla
  #5 (Daim)  
Alt 25.10.08, 17:49
Yeni Üye
 
Üyelik Tarihi: 24.10.08
Mesajlar: 1
Karizma Puanı: 0
ezmagkurukafa is on a distinguished road
Cevap: VB, butona basınca buton üretme nasıl olur

güzell bir anlatım..teşekür ederim...cok işime yaradı...ama
mesela buton1 e tıkladım bir buton olusturdu

tekrar buton1 e tıkladığımda yeni olusan butonun altına bir buton daha olusturacak...
nasıl yapabiliriz???
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Alıntı ile Cevapla
Cevapla

Go Back   Payidar.NET - Bilgi ve Paylaşım Forumu > Bilgisayar, Elektronik ve Network > Programlama Dilleri > Visual Basic .NET


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 
Konu Seçenekleri
Gösterim Modu

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Açık
Pingbacks are Açık
Refbacks are Açık

Hizli Erisim

Benzer Konular
Konu Yazar Forum Cevaplar Son Mesaj
laptop guc dugmesıne basınca acılmıyor... azizsparta Yardım Merkezi 2 02.10.08 20:03
Süper uçak motorlarını üretme hazırlığı ramstein Türk Silahlı Kuvvetleri 1 20.02.08 16:00
Gül nasıl bir cumhurbaşkanı olur? legend_isk Türkiye Gündemi 0 17.08.07 18:34
SMF buton oluşturucu ismailll Web Master Dünyası 1 12.02.07 19:53
Böbreğin glikoz üretme görevi عاكف ار Sağlık 1 17.12.06 16:37


Tüm Zaman GMT +2 Olarak ayarlı. Saat: 04:45.


Powered by vBulletin® Version 3.8.0 Beta 4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0