powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Вроде это просто , но я застрял (чтобы после ввода значения в поле и нажатия энтера текстовый курсор остался в этом поле)
14 сообщений из 14, страница 1 из 1
Вроде это просто , но я застрял (чтобы после ввода значения в поле и нажатия энтера текстовый курсор остался в этом поле)
    #32374593
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ребята помогайте.Проблема следующая.

У меня на форме поле (да и еще полно всякой ботвы) , туда я ввожу какое то текстовое значение (критерий для выборки). Процедура выборки у меня вызывается после нажатия энтера. Мне надо чтобы после ввода значения в поле и нажатия энтера текстовый курсор остался в этом поле, у меня он падла никак не хочет вставать в поле. Ну смотрите. В поле событие обрабатывается KeyDown я пишу вот

Private Sub deloFilter_KeyDown(KeyCode As Integer, Shift As Integer)

Dim sql As String
If KeyCode = vbKeyReturn Then
вызов процедуры
...

...

deloFilter.SetFocus
deloFilter.TabIndex = 5
' вроде после этого курсор должен встать в поле deloFilter , так хрен !?
Else
End If
End Sub

Что за черт? Или я тупильник , что то забыл, почему не могу установить курсор в поле?
Индекс перехода по tab пять. Точно.
...
Рейтинг: 0 / 0
Вроде это просто , но я застрял (чтобы после ввода значения в поле и нажатия энтера текстовый курсор остался в этом поле)
    #32374606
RVI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А, может надо DoCmd.GoToControl ("MyControl")
...
Рейтинг: 0 / 0
Вроде это просто , но я застрял (чтобы после ввода значения в поле и нажатия энтера текстовый курсор остался в этом поле)
    #32374618
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуйте сами создайте на форме пару полей (поле1 одно из них) и вот это напишите в событии "клавиша вниз" поля "поле1"

Private Sub поле1_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyReturn Then MsgBox (поле1.Text)
поле1.SetFocus
поле1.TabIndex = 0
msgbox "Что за фиг?"
End Sub

Сообщение "Что за фиг?" вылетело , значит весь код события работал.
Ничего не понимаю
Наверное сижу туплю.
...
Рейтинг: 0 / 0
Вроде это просто , но я застрял (чтобы после ввода значения в поле и нажатия энтера текстовый курсор остался в этом поле)
    #32374630
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 rvi
Проверил.Тоже не работает.
...
Рейтинг: 0 / 0
Вроде это просто , но я застрял (чтобы после ввода значения в поле и нажатия энтера текстовый курсор остался в этом поле)
    #32374633
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
перекинь фокус
на другое поле
а потом опять на себя
...
Рейтинг: 0 / 0
Вроде это просто , но я застрял (чтобы после ввода значения в поле и нажатия энтера текстовый курсор остался в этом поле)
    #32374642
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 ХТ
Ты не поверишь , но и это уже делал. Не помогло.
...
Рейтинг: 0 / 0
Вроде это просто , но я застрял (чтобы после ввода значения в поле и нажатия энтера текстовый курсор остался в этом поле)
    #32374643
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Хам
Не поможет

2 Eternal
KeyCode = 0
...
Рейтинг: 0 / 0
Вроде это просто , но я застрял (чтобы после ввода значения в поле и нажатия энтера текстовый курсор остался в этом поле)
    #32374651
Sfagnum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я тоже с таким трахался, и к мысле Хама приходил, но меня смущало что фокус иногда может и "легально" приходить, и тока ща допёр что можно "темповое" невидимое поле делать... перед пердачей фокуса показывать, а в нём на GotFocus отдавать его обратно и прятать...

Сделать можно всё!!!
Только бы знать как...
...
Рейтинг: 0 / 0
Вроде это просто , но я застрял (чтобы после ввода значения в поле и нажатия энтера текстовый курсор остался в этом поле)
    #32374652
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 ЛП
Есть. Заработало.
ЛП , я же говорил , что ты крут не по детски. Спасибо тебе!
...
Рейтинг: 0 / 0
Вроде это просто , но я застрял (чтобы после ввода значения в поле и нажатия энтера текстовый курсор остался в этом поле)
    #32374657
Sfagnum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 ЛП
1 почему? мой вариант должон сработать
2 но это лучше

Сделать можно всё!!!
Только бы знать как...
...
Рейтинг: 0 / 0
Вроде это просто , но я застрял (чтобы после ввода значения в поле и нажатия энтера текстовый курсор остался в этом поле)
    #32374660
Allll
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может быть, при нажатии Enter устанавливать флаг и по этому флагу возвращать фокус в поле1?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Private Sub поле1_KeyDown(KeyCode As Integer, Shift As Integer) 
   If KeyCode = vbKeyReturn Then 
      flgBackTo_поле1=True
   Else
      flgBackTo_поле1=False
End Sub 

По Enter фокус передаётся в поле2

Private Sub поле2_GotFocus()
   If flgBackTo_поле1=True Then
      flgBackTo_поле1=False
      поле1.SetFocus
   End if
End Sub
...
Рейтинг: 0 / 0
Вроде это просто , но я застрял (чтобы после ввода значения в поле и нажатия энтера текстовый курсор остался в этом поле)
    #32374668
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Sfagnum
Почему что? Почему твой вариант не работает? А я его и не видел когда пред.пост писал :)
Или почему вариант Хама не работает? Ну не знаю почему, но не работает.

2 Allll
Оч фигово будет, если у тебя последовательность перехода поменяется когда-нибудь. Например в табличном виде форма, передвинули колонки - и трындец.
...
Рейтинг: 0 / 0
Вроде это просто , но я застрял (чтобы после ввода значения в поле и нажатия энтера текстовый курсор остался в этом поле)
    #32374670
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И остальным тоже спасибо.
...
Рейтинг: 0 / 0
Вроде это просто , но я застрял (чтобы после ввода значения в поле и нажатия энтера текстовый курсор остался в этом поле)
    #32442813
novss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поднял эту тему потому как столкнулся с такой же проблемой. Долго рыскал по форуму и нашел этот топик.

За время поиска нашел альтернативное решение, вроде работает.

Private Sub TextBox_Exit(Cancel As Integer)
Application.Echo False

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
    If isNull(TextBox) Then
            MsgBox  "Неправильное значение" , vbCritical

            Cancel = True 'вот это оставляет фокус в текстовом поле

       Else
    
    End if
End SUb
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Вроде это просто , но я застрял (чтобы после ввода значения в поле и нажатия энтера текстовый курсор остался в этом поле)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]