Skip to main content

AccessTr.neT


Bir değişkeni atamak

Bir değişkeni atamak

Çözüldü #1
Değerli arkadaşlar,
Form üzerinde 5 adet çizgim var,her biri için tek tek vb kod yazmak yerine,formdaki metin kutusu içindeki değişkeni dim ile tanımlayarak ,Line2 vs. yerine L.Left=x kodunu yazmaya çalıştım ama nesne gerekli uyarısı alıyorum.Kod içinde nerede hata yaptım çok uğraşmama rağmen bulamadım.Yardımlarınız için şimdiden teşekkürler.
.rar line.rar (Dosya Boyutu: 11,74 KB | İndirme Sayısı: 8)
vetaltan 16-11-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla
Çözüldü #2
Aşağıdaki kodu deneyebilir misin?

Me.Controls("Line" & Forms!Form1!sayi.Value).Tag = "Line" & Forms!Form1!sayi.Value
For Each ctl In Me.Controls
If ctl.Tag = "Line" & Forms!Form1!sayi.Value Then
ctl.Left = 2500
ctl.Top = 2500
End If
Next
Cevapla
Çözüldü #3
Sn. ozanakkaya,
Göndermiş olduğunuz kod için teşekkür ederim,gayet iyi çalışıyor.Sayenizde sorunum çözüldü.
vetaltan 16-11-2009 tarihinden beri AccessTr.neT üyesidir.
Son Düzenleme: 28/03/2014, 19:56, Düzenleyen: vetaltan.
Cevapla
Çözüldü #4
Aynı anda metin kutularına da bunu nasıl uygulayabiliriz.Çünkü her bir çizginin bir ismi var ve çizgilerin hemen altlarında bulunmaları gerekiyor.Bu metin kutuları da referanslarını sayi' dan alıyorlar.
vetaltan 16-11-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla
Çözüldü #5
Tam anlayamadım ama örnek uygulama hazırladım. Metin kutuları çizgilerin altında.

Me.Controls("Line" & Forms!Form1!sayi.Value).Tag = "Line" & Forms!Form1!sayi.Value
Me.Controls("Metin" & Forms!Form1!sayi.Value).Tag = "Metin" & Forms!Form1!sayi.Value
For Each ctl1 In Me.Controls
If ctl1.Tag = "Line" & Forms!Form1!sayi.Value Then
ctl1.Left = 2500
ctl1.Top = 2500
End If
Next
For Each ctl2 In Me.Controls
If ctl2.Tag = "Metin" & Forms!Form1!sayi.Value Then
ctl2.Left = 2500
ctl2.Top = 3700
End If
Next
.rar line_sld.rar (Dosya Boyutu: 13,39 KB | İndirme Sayısı: 6)
Cevapla
Çözüldü #6
Sn. ozanakkaya,
Yanıtınız için çok teşekkür ederim.İkinci sorumu sanırım eksik yazdım,aynı anda'dan kastım aslında ;aynı for each next döngüsü içinde hem ctl1 ve hem ctl2 yi tanımlayabilirmiz şeklinde olması gerekiyordu.
Çünkü çok sayıda metin kutusu (ad,uzunluk,açı vb.) ve çok sayıda çizgi tipi var .Ayrıca mousemove olayında da ,mouse'un başlangıç noktası ve hareket yönüne göre dört adet (w >= 0 And h >= 0 , w >= 0 And h < 0 vb.)seçenek var.Dolayısıyla ayrı ayrı for each next döngüsü yazmam durumunda kod çok uzun ve karmaşık hale geliyor.
vetaltan 16-11-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da
Task