Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.11.28;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.011 c
6-1229425388
Mozgan
2008-12-16 14:03
2010.11.28
подключиться к FTP через http прокси.


2-1284119863
ATitle
2010-09-10 15:57
2010.11.28
Не работает Application.Title (Delphi 2010)


2-1283773342
guest
2010-09-06 15:42
2010.11.28
обновление датасета


4-1241772386
Unknown user
2009-05-08 12:46
2010.11.28
Отладка процесса с точками останова


15-1281986143
Дмитрий С
2010-08-16 23:15
2010.11.28
Активность firefox