Главная страница
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.006 c
15-1282209590
antonn
2010-08-19 13:19
2010.11.28
найти все строки в проекте, эксперт для IDE?


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


2-1283944447
Саша
2010-09-08 15:14
2010.11.28
дельфи и HTML


2-1283487912
Semen
2010-09-03 08:25
2010.11.28
Как сделать нормальный буффер


2-1283518156
NoSilence
2010-09-03 16:49
2010.11.28
Всегда поверх остальных