Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
RSS
Установа SetFocus на объект
 
Добрый вечер. Есть форма на которой Textbox1 в котором надо постоянно держать фокус.
Происходят  действия и фокус надо вернуть в Textbox1.
Если обрабатываю изменения TextBox1 по нажатию "Ввод"  с помощью TextBox1_KeyDown ( именно так мне и надо), фокус останавливается на другом объекте, но далее форма работает и его можно вернуть в TextBox1. В примере останавливается фокус на CommandButton1, а в рабочем файле на кнопке на которой меняется свойство Visible, но в примере так не получается.
Если выполнять TextBox1_Change, все работает корректно.
Может кто подскажет в чем тут загвоздка?
 
Загвоздка видимо в том, что пример не показателен и не соответвует тому что в рабочем файле. Как вы представляете поиск неисправности в том что работает?
 
Если нажать ввод в TextBox1, выполниться Sub sobytie, но фокус не вернется в TextBox1.
 
Костыль:
Код
Public Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    If KeyCode = 13 Then
        Call sobytie
        Me.Hide
        UserForm1.Show
    End If
End Sub
И добавить событие активации:
Код
Private Sub UserForm_Activate()
    Me.TextBox1.SetFocus
End Sub
 
Юрий М,
Спасибо. Заработало!!!!
 
kapso2,

на  кнопках и других вредных для вас контролсов TABStop=TRUE заменитена FALSE или удалите TABIndex. Костыль от Юрия прекрасен, но это перебор.
Изменено: БМВ - 28 Фев 2017 08:13:04
Страницы: 1
Читают тему (гостей: 1)
Наверх