Arama butonu
Bu konudaki kullanıcılar: 1 misafir
6
Cevap
1562
Tıklama
0
Öne Çıkarma
Visual basic listbox sorunu
D
19 yıl (56 mesaj)
Onbaşı
Konu Sahibi

Merhabalar.Ben bir adres takip programı yazmak istiyorum ve bunu dosyalama kullanarak yapıyorum. Kaydettiğim verileri textbox aracılığı ile kaydedilen kişinin baş harfini girince o harfle iligli bütün kayıtlar listbox'ta listeleniyor. Ben Listbox içindeki ismi yani IBRAHIM ' i tıklayınca IBRAHIM'e ait kaydetmiş olduğum kişisel bilgileri sağ taraftaki textboxlara nasıl yerlestirebilirim? bunun için listbox'un hangi özelliğini kullanmam gerekiyor? ve nasıl yapmam gerekiyor?

< Resime gitmek için tıklayın >

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil





< Bu mesaj bu kişi tarafından değiştirildi DaMNN -- 4 Haziran 2007; 19:48:37 >

İ
19 yıl (3622 mesaj)
Yarbay

Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged

End Sub


Bu mesaja 1 cevap geldi.
D
19 yıl (56 mesaj)
Onbaşı
Konu Sahibi

? birsey anlmadım valla biraz açıklarmısın? teşekkürler...


Bu mesaja 1 cevap geldi.
İ
19 yıl (3622 mesaj)
Yarbay

Listbox un bu event ini kullanacaksın işte.
Bu metodun içine yazdıkların, listboxda seçili item değiştikçe çalışır.

quote:

Orjinalden alıntı: DaMNN

? birsey anlmadım valla biraz açıklarmısın? teşekkürler...



F
19 yıl (34 mesaj)
Onbaşı

Ben şu şekilde yapıyorum. Önce Listbox içerisinde hangi Item'a tıkladığımı bulmak için şu şekilde bir fonksiyon yazıyorum:

----------------------------------------------------------------------------------------
Private Function ListItemSelected(ByVal Control As ListBox) As Integer
Dim i As Integer
For i = 0 To Control.ListCount
If Control.Selected(i) = True Then
Exit For
End If
Next i
ListItemSelected = i
End Function
-----------------------------------------------------------------------------------------

Bu kod ile şunu yapabiliyorsun: Örneğin ListBox'ının adı "BenimList" olsun. Programın içerisinde herhangi bir yerde

----------------------------------------------------------------
Dim n As Integer

n=ListItemSelected(BenimList)
----------------------------------------------------------------

dersen, "n" değişkeninde "BenimList" ListBox'ında seçili olan itemın sıra numarası tutuluyor. Artık kullandığın ListBox'ta kaçıncı itemın seçili olduğunu biliyorsun. Daha sonra şu kod ile

----------------------------------------------------------------
Private Sub BenimList_Click()
Dim n As Integer
dim s as String
n = ListItemSelected(BenimList)
s = BenimList.List(n)
End Sub
----------------------------------------------------------------

listede basılı olan itemın ismini görmen mümkün. Örneğin BenimList Listbox'unda şunlar yazılı olsun
Fallen_ONE
DaMNN
Black Spell

ve DaMNN'yi seçtiğin anda program BenimList_Click() kısmını çalıştıracak. Seçili olan itemın sıra numarası "n" değişkenine atanacak. (n=1) ve "s" değişkenine seçili itemın ismi yerleşecek. (s="DaMNN"). Artık "s" değişkenini kullanarak textboxlarına istediğin şeyleri yazabilirsin. Örneğin

-----------------------------------------------------
Select Case s
Case "Fallen_ONE"
TextBox1.Text = "blablabla"
TextBox2.Text = "asdasdasd"
Case "DaMNN"
TextBox1.Text = "blablabla"
TextBox2.Text = "asdasdasd"
.
.
.
End Select
-------------------------------------------------------


Bu mesaja 1 cevap geldi.
G
19 yıl (897 mesaj)
Yüzbaşı

Arkadaşım Listbox'tan hangisinin seçildiğini öğrenmek için fonksiyon yazmana gerek yok.

Eğer hangi indexin seçildiğini öğrenmek istiyorsan :

List1.ListIndex

Eğer Tıklanan indexe ait yazıyı görüntülemek istiyorsan :

List1.List(List1.ListIndex)

Anladığım kadarıyla senin programı yazarsak :

(Programda kullanılan nesneler : Text1 : textbox , Text2 : textbox, BenimList : listbox)

 

Private Sub Form_Load()
BenimList.AddItem ("Fallen_ONE")
BenimList.AddItem ("DaMNN")
BenimList.AddItem ("Black Spell")
End Sub

Private Sub BenimList_Click()
s = BenimList.List(BenimList.ListIndex)
Select Case s
Case "Fallen_ONE"
Text1.Text = "GANSH1"
Text2.Text = "GANSH1"
Case "DaMNN"
Text1.Text = "GANSH2"
Text2.Text = "GANSH2"
Case "Black Spell"
Text1.Text = "GANSH3"
Text2.Text = "GANSH3"
End Select
End Sub



Bu mesaja 1 cevap geldi.
F
19 yıl (34 mesaj)
Onbaşı

ListIndex Propertysini bilmiyordum. Öğrenmiş oldum sağolasın.



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.