Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.03.19;
Скачать: CL | DM;

Вниз

Как убрать звук от нажатия Alt+<буква>?   Найти похожие ветки 

 
Alextp ©   (2006-02-14 23:47) [0]

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

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


 
Leonid Troyanovsky ©   (2006-02-15 08:53) [1]


> Alextp ©   (14.02.06 23:47)  

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


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

--
Regards, LVT.


 
Alextp ©   (2006-02-15 12:25) [2]


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

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


 
Leonid Troyanovsky ©   (2006-02-15 19:41) [3]


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

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


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

--
Regards, LVT.


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

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


 
Alextp ©   (2006-02-16 09:48) [5]


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

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

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


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

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


 
Leonid Troyanovsky ©   (2006-02-16 10:07) [6]


> 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 12:33) [7]


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

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



Страницы: 1 вся ветка

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

Наверх




Память: 0.48 MB
Время: 0.039 c
2-1141062875
Sotlef
2006-02-27 20:54
2006.03.19
Method pointer в Object Pascal


11-1122024147
Ajax
2005-07-22 13:22
2006.03.19
KOL DC-DSP Audio


3-1138199915
Kot_
2006-01-25 17:38
2006.03.19
Пропадают записи.


2-1141596542
Drager
2006-03-06 01:09
2006.03.19
Drag n Drop


2-1141034810
Id
2006-02-27 13:06
2006.03.19
Форма в развернутом виде