PDA

View Full Version : تشخیص کلید tab



_lotus_
سه شنبه 09 اردیبهشت 1393, 20:22 عصر
سلام
چطور میتونم در برنامه فشردن کلید tab را توسط کاربر متوجه بشم؟
همه دکمه ها را در رویداد kedown و... میشه تشخیص داد بجز tab. با توجه به اینکه میخوام بتونم با tab روی اشیاء حرکت کنم.
ممنون

majidnazari65
سه شنبه 09 اردیبهشت 1393, 22:48 عصر
با توجه به اینکه میخوای کلید تب همچنان focus رو به کنترل بعدی منتقل کنه باید در keyup فشردن کلید تب رو تشخیص بدی. در این صورت اگه focus روی یک کنترل مثل تکس باکس باشه و با فشردن کلید تب مثلا به یک button منتقل بشه در این صورت رویداد keyup برای button اتفاق میفته.

اگر هم از کدهای زیر استفاده کنی بعد از اینکه focus به button1 منتقل بشه دیگه با تب نمیتونی focus رو به کنترب بعدی انتقال بدی.

Private Sub Button1_KeyDown(sender As Object, e As KeyEventArgs) Handles Button1.KeyDown
If e.KeyCode = Keys.Tab Then
Me.Text = "botton1 key down"
End If
End Sub
Private Sub Button1_PreviewKeyDown(sender As Object, e As PreviewKeyDownEventArgs) Handles Button1.PreviewKeyDown
If e.KeyCode = Keys.Tab Then
e.IsInputKey = True
End If
End Sub