İçeriğe geç
ShiftDelete.Net
Haber ara/ SDN'ye SorGiriş
Haber Akışı SDNTV İnceleme Forum Yapay Zeka Akıllı Telefon Elektrikli Otomobil Oyun ShiftDelete.Net Global Teknoloji Haberleri Mobil Otomobil Donanım Savunma Bilim Sosyal Medya İnternet Giyilebilir Teknoloji Rehber Ürünler Son dakika Yazarlar
  1. Ana sayfa
  2. Topluluk
  3. Webmaster Dünyası
  4. Web Tasarımı
Web Tasarımı

VB.Net Yardım

pouytre05.03.20084 cevap2.859 görüntüleme
2006'den beri2 mesaj
#1
arkadaşlar vb.nette kodlar ile label oluşturmak istiyorum ama bi tane değil for döngüsü içerine sokup istenilen sayıda nasıl yapabilirim bunu?

dim label1 as new label
label1.text="sdn"
controls.add(label1)

bir tane oluştu peki döngüde bunu birden fazla nasıl yapabilirim.
Cevaplar
2008'den beri548 mesaj
#2
dinamik bileşen oluşturma mantığı var Ama bu mantık delphide VB.Net te varmı bilmiyorum acıkcası .!

Mantık Şu dizi türünden bir label tanımlamanız gerekecek . !

Misal Delphi için

Lablim [1..10]of Tlabel ; > bu delphideki tanımalama sekli ..

Visual Basicte
Dim [1,10] as Labelin Sınıfının adı şeklinde bi tanımlama olabilir ..
Dim [1,10] as Labelin Sınıfının adı şeklinde bi tanımlama (delphide TLABEL)
for i = 1 to 10
Label[i].text=Str(i); >> İ değeri devamlı donecek ve label'in iceriği i'nin değerlerinden olusacak. STR fonksyinu integer değeri stringe cevirdi .. 

Next i ;


Yukarıdaki şekilde yaparsanız 10 tane olusabilir ama bunlar üst üste gleceği icin 10 tane goremezsiniz :) Bunun için de Labellerin Top değerlerini Döngü içinde ayarlamanız lazım :)
Onuda
label.top:=20*i
şeklinde yaparsanız. görme olasiliğiniz yüksek .
pouytre Konuyu açan
2006'den beri2 mesaj
#3
dizi şekilde olmuyor ya kabul etmiyo arkadaşlar bunu vb.net, asp.net te yaptım bunu ama burda beceremedim.
2007'den beri928 mesaj
#4
Dim i as integer
for i=0 to 10
Dim YeniLabel as new label
Yenilabel.name="yenilabel" & i
yenilabel.text="içerik"
me.controls.add (yenilabel)
next i


Böyle bişi olması lazım ;D
2008'den beri9 mesaj
#5
pouytre olup olmadığına dair bir şey yazmamışsın c# yaptım dediğini vb de de benzerdir büyük ihtimal

private void Form1_Load(object sender, EventArgs e)
{

for (int i = 0; i < 10; i++)
{
Label lbl = new Label();
lbl.Text = "label";
lbl.Top += i * 40;
this.Controls.Add(lbl);
}
}
yardımcı olur umarım

Cevabını yaz

Cevap yazmak için giriş yap ya da üye ol. Eski forum kullanıcı adın ve parolanla girebilirsin.