Форма.КлавишаПредпросмотр (Form.KeyPreview) Свойство

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

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

Значение

Тип: Булево.

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

Значение Истина, если форма получит все события клавиш; значение Ложь, если события клавиш получает выбранный в настоящее время в форме элемент управления. Значение по умолчанию - Ложь.

Примечание

Если для этого свойства задано значение Истина, форма будет принимать все события КлавишаНажата (KeyPress), КлавишаВниз (KeyDown) и КлавишаВверх (KeyUp). После того как обработчики событий формы завершили обработку нажатия клавиши, нажатие клавиши будет назначено элементу управления с фокусом. Например, если КлавишаПредпросмотр (KeyPreview) свойство имеет значение Истина, а ПолеВвода (TextBox) является текущим выбранным элементом управления, после того, как нажатие клавиши будет обработано обработчиками событий формы, элемент управления ПолеВвода (TextBox) получит нажатую клавишу. Чтобы обработчики событий клавиатуры обрабатывались только на уровне формы и не позволяли элементам управления принимать события клавиатуры КлавишаНажатаАрг (KeyPressEventArgs), задайте для свойства КлавишаПредпросмотр (KeyPreview) значение Истина в обработчике событий формы КлавишаНажата (Control.KeyPress).

Это свойство можно использовать для обработки большинства нажатий клавиш в приложении либо для обработки нажатия клавиши, либо для вызова обработки нажатия клавиши соответствующего элемента управления. Например, если приложение использует ключи функций, может потребоваться обработать нажатия клавиш на уровне формы, а не писать код для каждого элемента управления, который может принимать события нажатия.

Если форма не имеет видимых или включенных элементов управления, она автоматически получает все события клавиатуры.

Элемент управления в форме может быть запрограммирован на отмену принимаемых им нажатий клавиш. Поскольку элемент управления никогда не отправляет эти нажатия клавиш в форму, форма никогда не будет видеть их независимо от значения параметра КлавишаПредпросмотр (KeyPreview).

Пример

Форма1.КлавишаПредпросмотр = Истина;
Полный пример кода

Копировать     Выделить всё

ПодключитьВнешнююКомпоненту("C:\444\111\OneScriptForms\OneScriptForms\bin\Debug\OneScriptForms.dll"); Ф = Новый ФормыДляОдноСкрипта(); Форма1 = Ф.Форма(); Форма1.Отображать = Истина; Форма1.Показать(); Форма1.Активизировать(); Форма1.КлавишаПредпросмотр = Истина; Ф.ЗапуститьОбработкуСобытий();

Тестовый код

Копировать     Выделить всё

ПодключитьВнешнююКомпоненту("C:\444\111\OneScriptForms\OneScriptForms\bin\Debug\OneScriptForms.dll"); Ф = Новый ФормыДляОдноСкрипта(); Форма1 = Ф.Форма(); Форма1.Отображать = Истина; Форма1.Показать(); Форма1.Активизировать(); Форма1.КлавишаПредпросмотр = Истина; Сообщить(?( Форма1.КлавишаПредпросмотр , "", "!!! ") + "Форма.КлавишаПредпросмотр (Form.KeyPreview) Свойство" + " " + ТекущаяДата());

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

Форма (Form) Класс | Библиотека OneScriptForms