Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Словить нажатие клавиши <TAB> для TextBox Добавлено: 19.11.11 18:25  

Автор вопроса:  Zahar | Web-сайт: partnerka-ru.info
Private Sub TextBox1_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyUp
        If e.KeyCode = Keys.Enter Then Beep()
        If e.KeyCode = Keys.Tab Then Beep()
End Sub


При нажатии на Enter компьютер сигналит. При нажатии на клавишу Tab вход в эту процедуру не происходит, а курсор перескакивает на следующий контрол формы. Как это исправить, как словить нажатие клавиши Tab?

Ответить

  Ответы Всего ответов: 2  

Номер ответа: 1
Автор ответа:
 Father



Вопросов: 0
Ответов: 159
 Профиль | | #1 Добавлено: 19.11.11 22:37
Это делается так:
  1. Public Class Form1
  2.  
  3.     Public Class TxtBx : Inherits TextBox
  4.         Protected Overrides Function IsInputKey(keyData As System.Windows.Forms.Keys) As Boolean
  5.             If (keyData = Keys.Tab) Then Return True
  6.             Return MyBase.IsInputKey(keyData)
  7.         End Function
  8.     End Class
  9.  
  10.     Private WithEvents MyTxtBx As New TxtBx
  11.  
  12.  
  13.     Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
  14.         MyTxtBx.Parent = Me
  15.     End Sub
  16.  
  17.     Private Sub MyTxtBx_KeyDown(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles MyTxtBx.KeyDown
  18.         Debug.Print(e.KeyCode)
  19.     End Sub
  20. End Class

Ответить

Номер ответа: 2
Автор ответа:
 MISTER X



ICQ: 463865965 

Вопросов: 31
Ответов: 190
 Web-сайт: studioartf.ru
 Профиль | | #2
Добавлено: 18.12.11 15:55
если VB6 тогда так
  1.  
  2. Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
  3. If KeyCode = 9 Then
  4. 'Действие при нажатии TAB
  5. MsgBox "ВЫ НАЖАЛИ TAB"
  6. End If
  7. End Sub

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам