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

Вниз

Обработчик событий OnKeyPress   Найти похожие ветки 

 
Igor_   (2004-09-23 22:19) [0]

Нада сделать компонент типа Edit"a, только чтобы он реагировал на нажатие определённых клавиш, например только на цифры. Подскажите плз как в своём компоненте изменить OnKeyPress


 
GuAV ©   (2004-09-24 00:25) [1]

нужно НЕ изменить OnKeyPress, а override KeyPress.


> например только на цифры

Это делается и без KeyPress - в CreteParams флаг ES_NUMBER


 
Igor_   (2004-09-25 14:56) [2]

>Это делается и без KeyPress - в CreteParams флаг ES_NUMBER

А можно с огрызком кода плз, а то я не совсем понял что за CreteParams.


 
xmrz   (2004-09-25 15:48) [3]

Пример обработчика отсекающего все цифры, "*", "?" и "."  

procedure TForm1.MyEditKeyPress (Sender: TObject; var Key: Char);
begin
 case Key Of
  "1".."9", "*", "?", "." : Key := #0;
  end;
end;


Такой же можно встроить и в компонент переопределив процедуру KeyPress родителя.


 
P.N.P. ©   (2004-09-25 21:01) [4]

>Igor_   (25.09.04 14:56) [2]

type TNumberEdit  = class(TEdit)
 public
   procedure CreateParams(var Params: TCreateParams); Override;
....

procedure TNumberEdit.CreateParams(var Params: TCreateParams);
begin
 inherited CreateParams(Params);
 Params.Style := Params.Style or ES_NUMBER;
end;


 
Igor_   (2004-09-26 10:38) [5]

Спасибо, помогло



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

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

Наверх




Память: 0.47 MB
Время: 0.028 c
9-1116018261
XCoder
2005-05-14 01:04
2005.09.04
Оптимизация рендеринга OpenGL


9-1115776028
Slavikk
2005-05-11 05:47
2005.09.04
Отличие DCE и ODE в GLScene в Чём?


3-1122443555
ksa2002
2005-07-27 09:52
2005.09.04
Уникальное значение для поля Dbase


14-1123617830
quickblack
2005-08-10 00:03
2005.09.04
help, please


1-1124088387
Uran
2005-08-15 10:46
2005.09.04
Как запустить почтовую программу по умолчанию, без нового письма.