1. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление

Tedit

Тема в разделе "Delphi - FAQ", создана пользователем DZX, 6 апр 2006.

Статус темы:
Закрыта.
  1. DZX

    DZX Гость

    Репутация:
    0
    Уважаемые коллеги, смешная ситуация, однако...
    В компоненте TEdit при нажатии клавиши enter воспроизводится
    системный звук типа когда кликают на неактивное окно приложения
    когда фокус находится на другом модальном окне.
    Что то я недопонимаю причины явления, а бибиканье надоело,
    может подскажите где собака зарыта?
     
  2. Barmutik

    Barmutik Гость

    Репутация:
    0
    Это звук издаёт MS Windows при получениии сообщения о нажатии клавиши по которой ничего не делается ... в лоб решить просто ...

    Код:
    procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); 
    begin 
    if Key = #13 then
     Key := #0; 
    end;
    А ещё лучше по вводу перехродить просто на другой контрол

    Код:
    procedure Edit.OnKeyPress(Sender: TObject; var Key: Char) 
    begin 
    if Key = #13 then 
    begin 
     TWinControl(Sender).SelectNext(TWinControl(Sender), true, true); 
     Key := #0; 
    end; 
    end; 
    
    или
    
    procedure Edit.OnKeyPress(Sender: TObject; var Key: Char) 
    begin 
    if Key = #13 then 
    begin 
     FocusControl(FindNextControl(ActiveControl, true, true, false)); 
     Key := #0; 
    end; 
    end;
     
  3. DZX

    DZX Гость

    Репутация:
    0
    Большое спасибо, нажатие у меня обрабатывалось, но переопределить код нажатой клавиши не догадался.
     
Статус темы:
Закрыта.

Поделиться этой страницей