Page 1 of 1

Диалог ввода кода клавиши

Posted: Mon 13 Jun, 2016 02:42
by buniak_a_h
Подскажите пожалуйста, есть ли в far-е готовый диалог ввода клавиши (такой, как возникает при назначении клавиши для клавиатурной макрокоманды), аналогично far.ColorDialog?
И вдогонку. Сделал диалог, но при клике мышкой водится код сначала MsLClick, а потом почему-то Enter. Это при том, что клавиатуры я не касался. Это такая особенность, ли ошибка?

Диалог ввода кода клавиши

Posted: Mon 13 Jun, 2016 09:21
by Shmuel
buniak_a_h wrote: есть ли в far-е готовый диалог ввода клавиши
Нет. Но можно попробовать сделать на основе макроса SimSU.Common.KeyName.lua.

Диалог ввода кода клавиши

Posted: Mon 13 Jun, 2016 12:25
by John Doe

Code: Select all

lua:far.Message("\n\n","Press key",""); far.Message(mf.waitkey(),"Press key")
buniak_a_h wrote: И вдогонку.
Так надо. Нажатие мышки транслируется в Enter. Но здесь это оффтопик.

Диалог ввода кода клавиши

Posted: Mon 13 Jun, 2016 12:29
by buniak_a_h
Shmuel
Спасибо. А то я сделал прямо в диалоге (в обработчике событий far.Dialog на Msg==DN_CONTROLINPUT), но если сделать игнорирование Ms[LR]Click, то следом шёл Enter (возможно потому что кликал на бутон, но DN_BTNCLICK я обрабатываю раньше), в результате выйти из диалога не получалось.

Диалог ввода кода клавиши

Posted: Mon 13 Jun, 2016 12:35
by buniak_a_h
John Doe
И Вам спасибо. Это ещё проще. Осталось добавить список игнорируемых клавиш (в частности, клик мышой). Вот тут, боюсь, меня опять подстерегает Enter из оффтопика... :-(