Обработка нажатия Tab

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Zaharium
Начинающий
Начинающий
 
Сообщения: 10
Зарегистрирован: 27.05.2009 (Ср) 22:43

Обработка нажатия Tab

Сообщение Zaharium » 15.12.2009 (Вт) 0:25

У меня на форме есть TextBox. Мн необходимо отловить нажатие пользователем на клавишу Tab.
По непонятным мне причинам событие нажатия на эту клавишу в Text1_KeyPress, Text1_KeyDown не ловится. На этом форуме нашёл решение проблемы - отключить TabStop во всех контролах на форме. После этого событие нажатия на эту нужную клавишу начинает ловиться. Код таков:


Код: Выделить всё
Private Sub Text1_GotFocus()
For Each Control In Me.Controls
    Control.TabStop = False
Next Control
End Sub
Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyShift Then
    For Each Control In Me.Controls
        Control.TabStop = True
    Next Control
End If
End Sub
Private Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyShift Then
    For Each Control In Me.Controls
        Control.TabStop = False
    Next Control
End If
End Sub
Private Sub Text1_LostFocus()
For Each Control In Me.Controls
    Control.TabStop = True
Next Control
End Sub



В принципе всё меня устраивает в этом решении вопроса, кроме одного: При каждом нажатии клавиши компьютер пикает (подаёт звуковой сигнал аналогичный BEEP). Что делать? Помогите.

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Re: Обработка нажатия Tab

Сообщение Viper » 15.12.2009 (Вт) 6:01

KeyCode=0
Весь мир матрица, а мы в нем потоки байтов!


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 64

    TopList