Диалог.КлавишаНажата (Dialog.KeyPress) Событие

Использование

Чтение и запись.

Значение

Тип: Действие (Action).

Возвращает или задает код, выполняемый при нажатии клавиши в то время как элемент имеет фокус.

Примечание

Аргументы события

Клавиша (KeyValue) Возвращает значение для клавиши в виде целого числа.
КлавишаСтрокой (KeyToString) Возвращает значение для клавиши в виде строки вместе со значением модификатора, если таковой был применен.
Отправитель (Sender) Возвращает источник (объект) последнего события.
Параметр (Parameter) Возвращает объект, заданный при установке обработчика события, для передачи в обработчик события.
ЭтоAlt (IsAlt) Возвращает значение, указывающее, была ли нажата клавиша Alt (реальная или синтезированная).
ЭтоCapslock (IsCapslock) Возвращает значение, указывающее, была ли нажата клавиша CapsLock (реальная или синтезированная).
ЭтоCtrl (IsCtrl) Возвращает значение, указывающее, была ли нажата клавиша Ctrl (реальная или синтезированная).
ЭтоNumlock (IsNumlock) Возвращает значение, указывающее, была ли нажата клавиша NumLock (реальная или синтезированная).
ЭтоScrolllock (IsScrolllock) Возвращает значение, указывающее, была ли нажата клавиша ScrollLock (реальная или синтезированная).
ЭтоShift (IsShift) Возвращает значение, указывающее, была ли нажата клавиша Shift (реальная или синтезированная).

Пример

Диалог1.КлавишаНажата = ТФ.Действие(ЭтотОбъект, "Кнопка1_КлавишаНажата");
Полный пример кода


Перем ТФ, Диалог1, КлавишаНажата; Процедура ПриОткрытии() Экспорт ТФ.Верхний.Текст = "Диалог1 сейчас в фокусе. Нажмите любую клавишу. С модификаторами или без."; Диалог1.УстановитьФокус(); КонецПроцедуры Процедура Диалог1_КлавишаНажата() Экспорт АргументыСобытия = ТФ.АргументыСобытия; ТФ.Верхний.Текст = "Диалог1 сейчас в фокусе. Нажмите любую клавишу. С модификаторами или без. |Диалог1_КлавишаНажата = " + ТекущаяУниверсальнаяДатаВМиллисекундах() + " |Отправитель = " + АргументыСобытия.Отправитель + " |Клавиша = " + АргументыСобытия.Клавиша + " (" + ТФ.Клавиши.Имя(АргументыСобытия.Клавиша) + ") |КлавишаСтрокой = " + АргументыСобытия.КлавишаСтрокой + " |ЭтоAlt = " + АргументыСобытия.ЭтоAlt + " |ЭтоCapslock = " + АргументыСобытия.ЭтоCapslock + " |ЭтоCtrl = " + АргументыСобытия.ЭтоCtrl + " |ЭтоNumlock = " + АргументыСобытия.ЭтоNumlock + " |ЭтоScrolllock = " + АргументыСобытия.ЭтоScrolllock + " |ЭтоShift = " + АргументыСобытия.ЭтоShift + " |"; КлавишаНажата = Истина; КонецПроцедуры ПодключитьВнешнююКомпоненту("C:\444\111\OneScriptTerminalGui\OneScriptTerminalGui\bin\Debug\OneScriptTerminalGui.dll"); ТФ = Новый ТерминалФормыДляОдноСкрипта(); Диалог1 = ТФ.Верхний.Добавить(ТФ.Диалог("Диалог1", 3, 3, 30, 5)); Кнопка1 = ТФ.Кнопка("Кнопка1"); Кнопка2 = ТФ.Кнопка("Кнопка2"); Диалог1.ДобавитьКнопку(Кнопка1); Диалог1.ДобавитьКнопку(Кнопка2); Диалог1.Икс = ТФ.Позиция.Абсолютно(1); Диалог1.Игрек = ТФ.Позиция.Абсолютно(14); Диалог1.КлавишаНажата = ТФ.Действие(ЭтотОбъект, "Диалог1_КлавишаНажата"); ТФ.ПриОткрытии = ТФ.Действие(ЭтотОбъект, "ПриОткрытии"); ТФ.Запуск();

Тестовый код


Перем ТФ, Диалог1, КлавишаНажата; Процедура ПриОткрытии() Экспорт ТФ.Верхний.Текст = "Диалог1 сейчас в фокусе. Нажмите любую клавишу. С модификаторами или без."; Диалог1.УстановитьФокус(); ТФ.ТаймерНачатьИОстановить(ЭтотОбъект, "ТаймерТик"); КонецПроцедуры Процедура Диалог1_КлавишаНажата() Экспорт АргументыСобытия = ТФ.АргументыСобытия; ТФ.Верхний.Текст = "Диалог1 сейчас в фокусе. Нажмите любую клавишу. С модификаторами или без. |Диалог1_КлавишаНажата = " + ТекущаяУниверсальнаяДатаВМиллисекундах() + " |Отправитель = " + АргументыСобытия.Отправитель + " |Клавиша = " + АргументыСобытия.Клавиша + " (" + ТФ.Клавиши.Имя(АргументыСобытия.Клавиша) + ") |КлавишаСтрокой = " + АргументыСобытия.КлавишаСтрокой + " |ЭтоAlt = " + АргументыСобытия.ЭтоAlt + " |ЭтоCapslock = " + АргументыСобытия.ЭтоCapslock + " |ЭтоCtrl = " + АргументыСобытия.ЭтоCtrl + " |ЭтоNumlock = " + АргументыСобытия.ЭтоNumlock + " |ЭтоScrolllock = " + АргументыСобытия.ЭтоScrolllock + " |ЭтоShift = " + АргументыСобытия.ЭтоShift + " |"; КлавишаНажата = Истина; ТФ.Завершить(); КонецПроцедуры Процедура ТаймерТик() Экспорт ТФ.ОтправитьКлавиши("я", Ложь, Ложь, Ложь); КонецПроцедуры ПодключитьВнешнююКомпоненту("C:\444\111\OneScriptTerminalGui\OneScriptTerminalGui\bin\Debug\OneScriptTerminalGui.dll"); ТФ = Новый ТерминалФормыДляОдноСкрипта(); Диалог1 = ТФ.Верхний.Добавить(ТФ.Диалог("Диалог1", 3, 3, 30, 5)); Кнопка1 = ТФ.Кнопка("Кнопка1"); Кнопка2 = ТФ.Кнопка("Кнопка2"); Диалог1.ДобавитьКнопку(Кнопка1); Диалог1.ДобавитьКнопку(Кнопка2); Диалог1.Икс = ТФ.Позиция.Абсолютно(1); Диалог1.Игрек = ТФ.Позиция.Абсолютно(14); Диалог1.КлавишаНажата = ТФ.Действие(ЭтотОбъект, "Диалог1_КлавишаНажата"); ТФ.ПриОткрытии = ТФ.Действие(ЭтотОбъект, "ПриОткрытии"); ТФ.Запуск(); Сообщить(?( КлавишаНажата , "", "!!! ") + "Диалог.КлавишаНажата (Dialog.KeyPress) Событие" + " " + ТекущаяДата() + Символы.ПС);

Смотрите также

Библиотека OneScriptTerminalGui