Страница: 1 |
Страница: 1 |
Вопрос: переход по Tab или Enter
Добавлено: 07.01.08 13:23
Автор вопроса:
Shota
Ситуация:
Есть форма с несколькими текстбоксами, в Access или FoxPro после ввода в первом текстбоксе после нажатия Enter фокус переходит к следующему текстбоксу ( либо к следующему контролу с большим taborder-ом ). Можно также перемещаться по контролам с помощью клавиши Tab. В Access можно даже регулировать перемещение по записям таблиц ( т.е. после Enter на последнем контроле переходить к следующей записи или оставаться на текущей ) и такое поведение регулируется установкой соответствующих свойств:
Enter key behavior ( default, new line in field ) - для контрола
Cycle( all records, Current record, Current Page) - для всей формы
Вопрос:
Как реализовать переход к следующему контролу не только на [Tab] но и на [Enter] в VB.NET?
Ответы
Всего ответов: 5
Номер ответа: 1
Автор ответа: HuKeJIb 7C9
Вопросов: 2
Ответов: 24
Профиль | | #1
Добавлено: 08.01.08 19:08
для каждого контрола на форме в событие KeyPress вписываем:
If e.KeyChar = Chr(13) Then
SendKeys.Send("{tab}"
End If
в vb2005 работает
Номер ответа: 2
Автор ответа: Shota
Вопросов: 22
Ответов: 52
Профиль | | #2
Добавлено: 09.01.08 10:52
Уверен работает.........
Просто думал может возможно "настроить" форму на такое поведение, как в Access....... судя по всему придется для каждого контрола обрабатывать событие KeyPress........
Номер ответа: 3
Автор ответа: night-roll
Вопросов: 36
Ответов: 326
Профиль | | #3
Добавлено: 09.01.08 17:58
а старинный способ LostFocus не подходит?
Номер ответа: 4
Автор ответа: BUMM ®
Вопросов: 8
Ответов: 482
Профиль | | #4
Добавлено: 10.01.08 00:41
Не надо для каждого контрола, надо для формы
в дизайнере формы выставь свойство KeyPreview = true ну а потом в обработчике событий формы KeyPress:
 ByVal sender As System.Object, _
ByVal e As System.Windows.Forms.KeyPressEventArgs) _
Handles MyBase.KeyPress
If e.KeyChar = Chr(13) Then _
Me.SelectNextControl(Me.ActiveControl, True, True, True, True)
End Sub
Номер ответа: 5
Автор ответа: Shota
Вопросов: 22
Ответов: 52
Профиль | | #5
Добавлено: 10.01.08 11:15
в дизайнере формы выставь свойство KeyPreview = true ну а потом в обработчике событий формы KeyPress .......
Это приемлимый вариант спасибо...
Хотя..... вот только попробовал:
TextBox
ComboBox
CheckBox
с этих контролов фокус перемещается на следующий а вот с
Button - нет.......... хотя может и по смыслу не надо соскакивать с кнопки на ентер.....