Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.04;
Скачать: CL | DM;

Вниз

Как определить ctrl?   Найти похожие ветки 

 
Алексейй   (2004-03-18 20:53) [0]

Мне нужно, чтобы в edit можно было вводить только числа и можно было делать копипаст (ctrl+c, ctrl+v). Делаю с помощью обработчика FormShortCut (там, если клавиша "неправильная" - handle:=true). Но! ctrl+v и просто v там имеют одинаковый код (так же как и регистры там не разлечаются). В итоге чтобы был копипаст - приходится пропускать и символьные клавиши (c и v). А в keypressed - различаются, но как там сделать handle? т.е. не пропустить изменение на onchange?


 
Cobalt ©   (2004-03-18 22:56) [1]

OnKeyDown?


 
Алексейй   (2004-03-19 00:20) [2]

2 Cobalt
"OnKeyDown?"
И что? Просто в formshortcut есть параметр "var Handled: Boolean" с помощью которого я делаю прерывание обработки (т.е. ввели что-тот в едит, но до того как сработал onchange я сделал handle:=true и на этом обработка закончиалась! Т.е. при нажатии не цифры ничго не происходит!). Как подобное реализовать в всяких кейдаунах и т.п.?


 
Cobalt ©   (2004-03-19 00:26) [3]

TKeyEvent = procedure (Sender: TObject; var Key: Word; Shift: TShiftState)
Дело в том, что параметр Key можно заменить на 0, тогда собственный обработчик компонента (его оконная функция), проигнорирует это событие. Т.к. в обработчик будет передан изменённый тобой Key.



Страницы: 1 вся ветка

Текущий архив: 2004.04.04;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.047 c
1-1079528836
Vera
2004-03-17 16:07
2004.04.04
вопрос по Delphi


1-1079511165
olookin
2004-03-17 11:12
2004.04.04
Компонент ActiveX


1-1079432450
MIKL_b
2004-03-16 13:20
2004.04.04
Потоки


14-1078391762
max888
2004-03-04 12:16
2004.04.04
Задачка по математике


6-1071939663
KoLoB
2003-12-20 20:01
2004.04.04
Разорвать соединение