![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Клавиши на клаве [D5, Win95/98, WinME]
Win32 © (2002-03-15 17:27:00)А можно ли заблокировать все клавиши с циферками на клаве? Если возможно, код pliz
EsKor (2002-03-19 03:49:00) [1]Если это касается только конкретного компонента вашего приложения то вполне подойдет код приведенный mukha, только еще нужно (м.б. на всякий случай) свойство формы KeyPreview = false. Если для всех компонентов активной формы, то KeyPreview = true и обработчик KeyPress делать для формы. Можно еще поковырять компонент ApplicationEvents. При его использовании он первым обрабатывает указанное событие, если нужно чтобы это событие далее не обрабатывалось другим активным компонентом и/или активной формой, у него есть метод CancelDispatch.
Если вообще и для любого приложения (в текущем сеансе Windows), то один из вариантов - перехватывать прерывание от клавиатуры и блокировать запись цифрового символа в ее буфер. Возможно, что есть и более простой путь.
mukha (2002-03-18 12:36:00) [2]procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if (Key in ["0".."9"]) then
Key:=#0;
end;