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

Вниз

OnKeyPress и PC-Speaker   Найти похожие ветки 

 
Alex-21   (2003-06-12 12:30) [0]

Когда нажимаю на клавиши (событие OnKeyPress), исходит звук через PC-Speaker. Это как правило происходит, если не установлен драйвер для звуковой карты. Как отключить beep через PC-Speaker?


 
Anatoly Podgoretsky   (2003-06-12 12:49) [1]

На плате есть разъем для этого.


 
DVM   (2003-06-12 12:54) [2]

Для XP/2000 есть вот такое:

Отключение системного динамика - Если вы хотите отключить системный динамик, откройте оснастку "Диспетчер устройств" (пуск - выполнить - devmgmt.msc), в меню вид выберите пункт "Показывать скрытые устройства", в дереве консоли перейдите на "Драйверы устройств не Plug and Play", далее дважды щелкните "Beep". На вкладке "Общие" в пункте "Применение устройства" выберите "Это устройство не используется (отключено)".

Настройки хранятся, я думаю, в реестре. Включить/отключить - посмотреть, что в реестре изменилось.


 
Song   (2003-06-12 13:10) [3]

SystemParametersInfo()


 
Alex-21   (2003-06-19 20:17) [4]

Да, но куда помещать SystemParametersInfo() в коде? Мне нужно отключить системный динамик перед тем, как произойдет событие OnKeyPress и потом снова включить динамик после события OnKeyPress.


 
777   (2003-06-19 20:28) [5]

А так?
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if ... then
begin
key:=#0;
..................
end;
end;


 
Алексадр Спелицин   (2003-06-20 00:35) [6]

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if ... then
begin
PeekMessage (TWinControl(Sender).Handle, Msg, WM_KEYFIRST, WM_KEYLAST, PM_REMOVE);
...
end;
end;


 
Alex-21   (2003-06-26 15:02) [7]


> 777 © (19.06.03 20:28)
> ...
> key:=#0;
> ...

При нажатии кнопок с буквами не происходит пикание, а при нажатии Enter"а и Back"а происходит пикание. Почему?


> Алексадр Спелицин (20.06.03 00:35)
> ...
> PeekMessage (Msg, TWinControl(Sender).Handle, WM_KEYFIRST, WM_KEYLAST, PM_REMOVE);
> ...

Здесь глюки происходят: пишу "привет кги" и после этого словосочетания ставлю пробел, в итоге словосочетание становится таким: "привет кrub " (стоит у меня Punto Switcher). А ведь должно быть просто: "привет rub ". Здесь дело в PeekMessage(). Как исправить эту проблему?


 
Alex-21   (2003-06-28 13:24) [8]

Никто не подскажет, в чём дело?


 
Alex-21   (2003-06-29 14:45) [9]

Значит никто не знает?


 
Алексадр Спелицин   (2003-06-29 15:33) [10]


> При нажатии кнопок с буквами не происходит пикание, а при
> нажатии Enter"а и Back"а происходит пикание. Почему?

Потому, что обработка нажатий на Enter & Back происходит сообщением WM_KEYDOWN. Поместите мой код в обработчик OnKeyDown (для Enter, Back, ...). А вот буковки можно обрабатывать в OnKeyPress.


 
Alex-21   (2003-07-02 17:51) [11]


> Потому, что обработка нажатий на Enter & Back происходит
> сообщением WM_KEYDOWN. Поместите мой код в обработчик OnKeyDown

Тут не работает почему-то. Все равно пикает.


 
Alex-21   (2003-07-04 14:38) [12]

Мастера помогите плиз. Как обойти этот пик при нажатии на Ентер и т.д.?



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

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

Наверх




Память: 0.46 MB
Время: 0.008 c
3-55478
DmitryZ
2003-06-25 16:10
2003.07.17
Проблема работы с MySQL через dbExpress в Delphi


6-55679
Fotog
2003-04-13 21:53
2003.07.17
TserverSocet


3-55387
SCORPION ZP
2003-06-19 13:14
2003.07.17
Конвертация DBF из DOS в Win


14-55740
Ajax
2003-07-01 09:22
2003.07.17
НТВ+


14-55791
Карлсон
2003-06-29 21:36
2003.07.17
хинт в Win2K.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский