Что нового

Не могу отловить клавишу Windows

LeXXeR

Новичок
Сообщения
4
Репутация
0
Задача: сделать менеджер хоткеев на AutoIt.
Проблема: почему-то не получается зафиксировать комбинации с Win-клавишей.
Пример:
Код:
HotKeySet("{LWIN}1", "Test") ;Win+1
HotKeySet("+!d", "Test")  ;Shift-Alt-d

;;;; Body of program would go here ;;;;
While 1
    Sleep(100)
WEnd
;;;;;;;;

Func Test()
    MsgBox(4096,"","This is a message.")
EndFunc
В этом скрипте Shift-Alt-d отрабатывает на ура, а вот Win+1 - нет. Подскажите, почему?
 

SyDr

Сидра
Сообщения
651
Репутация
158
Потому что надо не "{LWIN}1", а "#1"
 
Автор
LeXXeR

LeXXeR

Новичок
Сообщения
4
Репутация
0
Спасибо! :smile: Тему можно закрывать.
Подскажите только, где взять инфо по обозначениям клавиш? Во вложенной справке в разделе про HotKeySet ничего про это нет, а {LWIN} взял из раздела про Send.
 

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5 379
Репутация
2 711
Раздел про Send().
 
Автор
LeXXeR

LeXXeR

Новичок
Сообщения
4
Репутация
0
Так я ж и говорю: в разделе про Send немного не то. Там клавиша Windows обозначается как {LWIN} и {RWIN}. А про "#" там вообще написано вот что (русская справка):

'#'
Этот символ используется в качестве символа простого разделения текста для облегчения чтения. Поэтому Send("!a#!b") - это то же самое, что и Send("!a!b").
 

SyDr

Сидра
Сообщения
651
Репутация
158
Ну так тогда скачайте старый дистрибутив AutoIt и работайте с устаревшей версией, если так хочется читать устаревшую справку.

'#'
The hash now sends a Windows keystroke; therefore, Send("#r") would send Win+r which launches the Run dialog box.
 
Автор
LeXXeR

LeXXeR

Новичок
Сообщения
4
Репутация
0
:smile:
Всё понял, осознал. Еще раз спасибо!
 
Верх