Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как убрать звук от нажатия Alt+<буква>? [D5]


Alextp ©   (2006-02-14 23:47:00) 

На форме есть MainMenu, для некоторых пунктов в нем заданы через подчеркивание hotkeys, например, "&Fille" (hotkey будет Alt+F). Проблема в том, что при нажатии на Alt+буква, если такого хоткея нет (например, Alt+W), Windows выдает звук, MessageBeep. Как избавиться от этого звука? Анноит.

Посмотрел в исходниках VCL, где это может быть, ничего не нашел...


Alextp   (2006-02-16 12:33:00) [1]


> Видимо, как-то так (без всяких шорткатов):

Спасибо, помогло.


Leonid Troyanovsky   (2006-02-16 10:07:00) [2]


> Alextp ©   (16.02.06 09:48) [5]

> звука. :) Т.е. у меня нажатие Alt+буква зарезервировано
> под мой шорткат - как бы убрать стандартную отработку, с
> этим звуком?


Видимо, как-то так (без всяких шорткатов):

procedure TForm1.WMMenuChar(var msg: TWMMenuChar); // message WM_MENUCHAR;
var
 s : String;
begin
 s:= InputBox('Find', 'match', msg.User);
 {Поиск}
 msg.Result := MakeLResult(0, 1);
end;


--
Regards, LVT.


Alextp   (2006-02-16 09:48:00) [3]


> Дельфи здесь ни причем. Звук получается при обработке
> WM_MENUCHAR, когда в high-order word of the return
> value возвращается 0.

Почти ясно. Теперь надо понять, как от этого звука избавиться...

Проблема в чем: мне лично не мешает сам звук, но у меня по нажатию Alt+буква появляется формочка быстрого поиска, как в NC. И сейчас она появляется в сопровождении этого звука. :) Т.е. у меня нажатие Alt+буква зарезервировано под мой шорткат - как бы убрать стандартную отработку, с этим звуком?


> Правильно делает, она тебе сигналит не нажимай эту букву.

См. выше, в моей программе нажимать можно.


Anatoly Podgoretsky   (2006-02-15 20:14:00) [4]

Правильно делает, она тебе сигналит не нажимай эту букву.


Leonid Troyanovsky   (2006-02-15 19:41:00) [5]


> Alextp ©   (15.02.06 12:25) [2]

> Нет, это явно где-то в VCL, в некоторых программах написанных
> на Delphi, этого звука нет.


Дельфи здесь ни причем.
Звук получается при обработке WM_MENUCHAR,
когда в high-order word of the return value возвращается 0.

--
Regards, LVT.


Alextp   (2006-02-15 12:25:00) [6]


> Дык, это надо смотреть в исходниках windows.

Нет, это явно где-то в VCL, в некоторых программах написанных на Delphi, этого звука нет.


Leonid Troyanovsky   (2006-02-15 08:53:00) [7]


> Alextp ©   (14.02.06 23:47)  

> Посмотрел в исходниках VCL, где это может быть, ничего не нашел...


Дык, это надо смотреть в исходниках windows.

--
Regards, LVT.


Наверх

Титульная страница Поиск, карта сайта Написать письмо