Вниз
Скачать: CL | DM;

Запрет звука по нажатию Enter   Найти похожие ветки 

 
Semen   (2010-09-07 07:07) [0]

Есть обычное поле TEdit.
1.Когда в нем нажимаеш Enter Windows XP издает звук.
2.Когда доходиш до максимальной допустимой длинны поля и больше нельзя ввести символы (например когда MaxLength свойство = 3).
Как зделать так,чтобы его не было.
В смысле чтобы не отключать в самом Windows-e звук,
а отключить событие воспроизведения звука по нажатию Enter у меня в программе.


 
Ser001   (2010-09-07 07:43) [1]

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
 if key=Char(VK_RETURN) then
 begin
   key:=#0;
 end;
end;


 
Leonid Troyanovsky ©   (2010-09-07 07:53) [2]


> Semen   (07.09.10 07:07)  

> Как зделать так,чтобы его не было.

Это реакция эдита на illegal characters или превышение
допустимой длины. Для обращения внимания юзера.

Вообще-то, в диалогах клавиши Enter, Esc играют
специальную роль - для нажатия default & cancel
button и в этом случае в эдиты не попадают.

Ну, если очень хочется, можно в OnKeyPress:

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
 with Sender as TEdit do
  if (Key in [ #13,#27]) or
     ((Length(Text) = MaxLength) and (SelLength = 0) and (Key <> #8)) then
    Key := #0;
end;

--
Regards, LVT.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.005 c
2-1283144728
azamatufa
2010-08-30 09:05
2010.11.28
использование uses


15-1282079208
cwl
2010-08-18 01:06
2010.11.28
Графический движок


2-1284020087
Askalot
2010-09-09 12:14
2010.11.28
затемнение изображения


4-1242025717
vvavva
2009-05-11 11:08
2010.11.28
как запустить программу через командную строку с параметрами?


15-1281511758
Плохиш
2010-08-11 11:29
2010.11.28
Eclipse Bug




   Наверх