Главная страница
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.009 c
2-1283843667
Илья К.
2010-09-07 11:14
2010.11.28
AV при использовании IBUpdateSQLW


15-1282465743
Alex Konshin
2010-08-22 12:29
2010.11.28
Windows 7 Update глюк отрубает RAID диски и может вызвать BSOD


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


2-1284121956
HF-Trade
2010-09-10 16:32
2010.11.28
Проверка прокси серверов в потоках


15-1282336187
Юрий
2010-08-21 00:29
2010.11.28
С днем рождения ! 21 августа 2010 суббота