Skip to main content

AccessTr.neT


Nesneler arasında Yön tuşlarıyla Geçiş

Nesneler arasında Yön tuşlarıyla Geçiş

Çözüldü #1
Merhaba arkadaşlar bu sefer yapmaya çalıştığım şey form üzerinde çok sayıda bulunan textbox, 4 adet bulunan combobox ve 1 adette datetimepicker arasında yön tuşlarıyla geçiş yapmak. Nette araştırdım fakat tam anlamıyla net bir bilgi yoktu. Nasıl yapabileceğim konusunda fikri olan ?
Cevapla
Çözüldü #2
1- Form özelliklerinden KeyPreview'i True olarak ayarlaryın.
2- Form olaylarından KeyDowm'a çift tıklayın.

Private Sub Form1_KeyDown(sender As Object, e As KeyEventArgs) Handles MyBase.KeyDown
If (e.KeyCode = Keys.Right) Then
SendKeys.Send("{TAB}")
End If
End Sub

KeyDown olayında benim Sağ tuş için yazdığım kod bu şekilde.
AccessTr.Net teknik konular içeren bir sitedir. Bu tip sitelerde en iyi şekilde yardım alabilmeniz için Site Kurallarını mutlaka okumanız ve buna göre hareket etmeniz lazım.
Cevapla
Çözüldü #3
üstadım sağolasın fakat bunda normal olarak tab'a bastığın zamanki gibi davranıyor. Direk olarak hangi ok'a bastıysan o yönde imleci hareket ettirme gibi bir imkanımız yokmudur?
Cevapla
Çözüldü #4
Alıntı:hangi ok'a bastıysan o yönde imleci hareket ettirme

derken mesela aktif bulunduğu kontrolün sağındaki ilk kontrole geçmesinimi istiyorsunuz?
AccessTr.Net teknik konular içeren bir sitedir. Bu tip sitelerde en iyi şekilde yardım alabilmeniz için Site Kurallarını mutlaka okumanız ve buna göre hareket etmeniz lazım.
Cevapla
Çözüldü #5
sağındaki, solundaki aşağıdaki veya yukarıdakilere de geçecek şekilde. {UP},{DOWN},...vs. eklemeleri varmış denedim fakat olmadı.
Son Düzenleme: 09/07/2014, 17:19, Düzenleyen: tetikçi_61.
Cevapla
Çözüldü #6
İstediğiniz şey yukarıda yazdığım basit mantık ile olmaz. Siz daha ileri seviye bir istekte bulunuyorsunuz. Bence çok gerek yok gibi çünkü bunu ayarlamak çok zor. Eğer form üzerindeki kontroller belirli bir düzene sahip ise ekteki çözüm işe yarayabilir ancak diğer türlü çözüm zor.


Public Sub TabIndexeGit(ByVal i As Integer)
For Each ctl As Control In Me.Controls
If ctl.TabIndex = i Then
ctl.Focus()
End If
Next
End Sub

Private Sub Form1_KeyDown(sender As Object, e As KeyEventArgs) Handles MyBase.KeyDown

If (e.KeyCode = Keys.Down) Then

If (ActiveControl.TabIndex = 11) Then
TabIndexeGit(0)
Else
TabIndexeGit(ActiveControl.TabIndex + 1)
End If

End If

If (e.KeyCode = Keys.Up) Then

If (ActiveControl.TabIndex = 0) Then
TabIndexeGit(11)
Else
TabIndexeGit(ActiveControl.TabIndex - 1)
End If

End If

If (e.KeyCode = Keys.Right) Then

TabIndexeGit(ActiveControl.TabIndex + 4)

End If

If (e.KeyCode = Keys.Left) Then

TabIndexeGit(ActiveControl.TabIndex - 4)

End If

End Sub
.rar AccessTr.rar (Dosya Boyutu: 71,94 KB | İndirme Sayısı: 9)
AccessTr.Net teknik konular içeren bir sitedir. Bu tip sitelerde en iyi şekilde yardım alabilmeniz için Site Kurallarını mutlaka okumanız ve buna göre hareket etmeniz lazım.
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da