Что нового

GuiHotKey UDF - Создание API элементов HotKey для задания горячих клавиш

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5 379
Репутация
2 705
AutoIt: 3.3.6.1
Версия: 1.0

Категория: Система, Элементы GUI

Описание: Небольшая, но очень полезная UDF библиотека, обеспечивающая работу с API элементами HotKey. Данная библиотека написана по аналогии с другими GUI библиотеками от Gary Frost'а и др. Для более подробной информации см. описания ко всем функциям внутри GuiHotKey.au3. Я рекомендую сразу скопировать файлы GuiHotKey.au3 и HotKeyConstants.au3 в папку ...\AutoIt3\Include, для простоты их подключения в ваши скрипты.

Список функций:
_GUICtrlHotKey_Create
_GUICtrlHotKey_Destroy
_GUICtrlHotKey_GetHotKey
_GUICtrlHotKey_GetKeys
_GUICtrlHotKey_MakeKeyCode
_GUICtrlHotKey_SetHotKey
_GUICtrlHotKey_SetRules

Файл(ы): HotKey.zip

Пример:
Код:
#include <GUIConstantsEx.au3>
#include <GUIHotKey.au3>

Global $HK, $VK

$hForm = GUICreate("MyGUI", 300, 92)
$hHotKey = _GUICtrlHotKey_Create($hForm, _GUICtrlHotKey_MakeKeyCode($HOTKEYF_ALT, $VK_F5), 20, 20, 260, 19)
$Button = GUICtrlCreateButton('OK', 115, 54, 70, 23)
GUISetState()

While 1
	Switch GUIGetMsg()
		Case $GUI_EVENT_CLOSE
			ExitLoop
		Case $Button
			$Code = _GUICtrlHotKey_GetHotKey($hHotKey)
			_GUICtrlHotKey_GetKeys($Code, $HK, $VK)
			MsgBox(64, "Info", "Hot key code:" & @TAB & "0x" & Hex($Code, 4) & @CR & "Key modifier flags:" & @TAB & "0x" & Hex($HK, 2) & @CR & "Virtual key code:" & @TAB & "0x" & Hex($VK, 2), 0, $hForm)
	EndSwitch
WEnd

Скриншот:


Источник: GuiHotKey UDF (оффициальный форум)
Автор: Yashied
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5 379
Репутация
2 705
Я же написал, что библиотека реализует API элемент HotKey со всеми его достоинствами и недостатками, HotKeyInput UDF работает на Hook'е и предназначен в основном для HotKey UDF. Хотя, возможности его намного шире, но только в рамках HotKey UDF.
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8 166
Репутация
2 331
В отличий от HotKeyInput UDF, Input созданный данной библиотекой, не “дружит” с Tab'ами :(.
Но в использовании данная библиотека удобнее.
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5 379
Репутация
2 705
Это нативный элемент Windows. Как и все другие GUI... библиотеки с Tab не дружит, придется скрывать и показывать элементы вручную.


Добавлено:
Сообщение автоматически объединено:

CreatoR сказал(а):
Но в использовании данная библиотека удобнее.
Чем?
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8 166
Репутация
2 331
Верх