Skip to main content

AccessTr.neT


Kontrollere Toplu Kod Yazmak

Kontrollere Toplu Kod Yazmak

#43
evet şimdi sadece ilgili iki liste de güncelleme oluyor daha hızlı oldu ellerinize sağlık
bir ara vaktiniz musait olduğunda öğretme amaçlı 
"kodları neden böyle yazdık" "başka bir durumda neresini nasıl değiştiririz" 
gibi bir açıklama ile benim gibi gördüğünü yorumlayamayıp kendi programına ekleyemeyen arkadaşlarda faydalanmış olurlar
Son Düzenleme: 25/01/2020, 11:46, Düzenleyen: accessman.
Cevapla
#44
Anlamdığınız yerleri sorabilirsiniz.
------------------------------------------------------------------------------------------------
1--Kod modül adındaki modüle ekleyip içine  Public veri As String atadim hafızada tutusun diye public olarak.

Veri hangi Listviewe tiklandiysa onun Id numarasını  hafızada tutuyor.

Yukarıdaki olay başka yoldanda yapılabilirdi öyle yaptım.


2--Private Kontrol As New Collection  classa alinacak listviewlwleri collection icine almak için tanımlandı.
Const ii As Byte = 20 her döngüde 0 to 20 yazmak yerine 20 yerinine ii yazdım

Collection yerine Redim Preserve ilede olur  bu işlem.

3--Select Case yapmamın amacı ise Listview adları L00,L01,L02... gibi oldugu için.

örnek Case 1 To 9 eğer listview adi L09 a kadarsa olayi için yapıldı.

4--Dim TxtOpt As ClsLstvew TxtOpt diye class icin degisken tanımladım.
Set TxtOpt = New ClsLstvew ilede new olarak eklendi atama icin.

TxtOpt.adbul  hangi listview ise aliniyorsa class icine onun Listview adını ekliyor.
Set TxtOpt.opt class kalip yani Class modüldeki Public WithEvents opt As ListView ile alakali.

5-- Kontrol.Add TxtOpt collectiona class icine alınanlar ekleniyor.
------------------------------------------------

Class kodlar icin ise;

6--Dim adbulLstvew tanimladim classa alinan listviewlwrin adlarınıbulmak için

Private Sub opt_ItemClick(ByVal Item As MSComctlLib.ListItem)
    veri = opt.SelectedItem
End Sub
burada veri ile secçlenlerin Id nosu bulunuyor ve 1.mesajda yazdığım gibi hafiza olayi için.

7--Public Property Get adbul() As Variant
    adbul = adbulLstvew
End Property

Public Property Let adbul(ByVal Value As Variant)
    adbulLstvew = Value
End Property

Yukaridakiler ise seçilen listviewlerin Adlarını bulmak için yapıldı.
8--
Form_Form2.güncelle adbul, veri ise Formdaki Güncelle Functionu calistirmak icin yapildi(Form_Form2.güncelle burası berduş hocamızın eseri Img-grin)


------------------------------------------------------------------------------------------------
Cevapla
#45
bu mükemmel açıklama için teşekkürler
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Task