Гость
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как программно включать и выключать CapsLock в Win 10 ? / 8 сообщений из 8, страница 1 из 1
27.03.2018, 16:54
    #39621402
Nebo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как программно включать и выключать CapsLock в Win 10 ?
При входе в поле на форме нужно программно включать CapsLock, а при выходе выключать CapsLock

Код ниже работал, включал и выключал CapsLock, но похоже перестал работать в Win 10
Как это сделать?


http://access.mvps.org/access/api/api0046.htm


Входим и выходим из поля:

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
Private Sub BookNo_Enter()
    
        SendKeys "{CAPSLOCK}", True
        
        Dim bCapsLockState As Boolean
        bCapsLockState = IsCapsLockOn()
        
        If bCapsLockState = False Then
            ToggleCapsLock
        End If

End Sub

Private Sub BookNo_Exit(Cancel As Integer)
    
    If Me.LogCapsLock = -1 Then
        SendKeys "{CAPSLOCK}", True
        
        Dim bCapsLockState As Boolean
        bCapsLockState = IsCapsLockOn()
        
        If bCapsLockState = True Then
            ToggleCapsLock
        End If
    
    End If

End Sub
...
Рейтинг: 0 / 0
27.03.2018, 16:58
    #39621409
Nebo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как программно включать и выключать CapsLock в Win 10 ?
Вот ещё нашёл по теме. Читаю.

http://www.tek-tips.com/viewthread.cfm?qid=375835
...
Рейтинг: 0 / 0
27.03.2018, 17:47
    #39621465
MrShin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как программно включать и выключать CapsLock в Win 10 ?
Sendkeys нужно избегать где только можно, тем более она можеть менть Numlock в некоторых слкчаях.
Да, нужно использовать GetKeyboardState / SetKeyboardState функции.
...
Рейтинг: 0 / 0
27.03.2018, 18:29
    #39621516
Nebo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как программно включать и выключать CapsLock в Win 10 ?
MrShin,

Пробую разные варианты:

например такой:

авторPut the following line of code under "On Keypress" for the field:

KeyAscii = Asc(UCase(Chr(KeyAscii)))

Но этот вариант не работает с кириллицей. Chr спотыкается.
...
Рейтинг: 0 / 0
27.03.2018, 18:33
    #39621519
Nebo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как программно включать и выключать CapsLock в Win 10 ?
...
Рейтинг: 0 / 0
27.03.2018, 18:41
    #39621521
Nebo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как программно включать и выключать CapsLock в Win 10 ?
Вот этот вариант хорошо работает с английскими буквами в событии KeyPress(KeyAscii As Integer).

KeyAscii = Asc(UCase(Chr(KeyAscii)))

Но не работает Chr(KeyAscii) с кириллицей.
ChrW(KeyAscii) уже не спотыкается, но возвращает не тот символ.
...
Рейтинг: 0 / 0
27.03.2018, 23:06
    #39621611
Игортан
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как программно включать и выключать CapsLock в Win 10 ?
Может не мудрствовать лукаво и сделать проще?

Пусть в поле вводят значение как хотят.
При выходе из него - прописать
Me!MyControl=UCase(Me!MyControl)
И забыть про всякие переключения?
...
Рейтинг: 0 / 0
27.03.2018, 23:24
    #39621619
Nebo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как программно включать и выключать CapsLock в Win 10 ?
Игортан,

Спасибо ) Как вариант - да!
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как программно включать и выключать CapsLock в Win 10 ? / 8 сообщений из 8, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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