Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.06.02;
Скачать: [xml.tar.bz2];

Вниз

Beep при выходе из DBEdit   Найти похожие ветки 

 
Жук   (2003-05-22 08:38) [0]

Есть процедура :
procedure TFPrinc1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
// ПЕРЕНАПРАВЛЕНИЕ ENTER -> TAB
if Key=13 then begin
if ActiveControl is TDBLookupComboBox
then begin
if not TDBLookupComboBox(ActiveControl).ListVisible
then begin
Key := 0;
FindNextControl(ActiveControl, true, true, false).SetFocus;
end;
end
else begin
Key := 0;
FindNextControl(ActiveControl, true, true, false).SetFocus;
end;
end;
// Раскрываем список combobox
if (Key=32) and (ActiveControl is TDBLookupComboBox) and (not TDBLookupComboBox(ActiveControl).ListVisible)
then TDBLookupComboBox(ActiveControl).DropDown;
end;

Если ActiveControl is TDBEdit, то машина издаёт Beep, как избавится от этого звука ?


 
Lord Warlock   (2003-05-22 08:50) [1]

По моему нужно убрать

else begin
Key := 0;
FindNextControl(ActiveControl, true, true, false).SetFocus;
end;

пусть Тав сам выполняет свою функцию


 
Жук   (2003-05-22 08:54) [2]

Смысл процедуры в переходе между компонентами именно по Enter"y


 
Lord Warlock   (2003-05-22 09:10) [3]

Извини, смоделировать ситуацию не могу, мой комп не пищит.
Единственное - попробуй Key:=VK_OEM_CLEAR;


 
Danilka   (2003-05-22 09:10) [4]

а вот-так не работает?

if Key=VK_ENTER then key:=VK_TAB;


 
Danilka   (2003-05-22 09:11) [5]

вернее VK_RETURN


 
Жук   (2003-05-22 09:20) [6]

Key:=VK_OEM_CLEAR - не помог
Key:=VK_RETURN - тоже


 
Жук   (2003-05-22 09:34) [7]

Главное, что пищит на end"е, закрывающем процедуру.


 
Соловьев   (2003-05-22 09:42) [8]


> Жук © (22.05.03 09:34)

писк - это настройки ОС и биоса ПК. А для перехода по Enter я использую констуркцию:


procedure TfMain.FormKeyPress(Sender: TObject; var Key: Char);
begin
if (Key = #13) then
begin
Key:=#0;
Perform(WM_NEXTDLGCTL,0,0);
end;
end;

fMain.KeyPreview = true;


 
Жук   (2003-05-22 10:04) [9]


> Соловьев © (22.05.03 09:42)
>
> писк - это настройки ОС и биоса ПК.

Может, тогда код не трогать, а что-то в них поменять ?

Perform(WM_NEXTDLGCTL,0,0) - не помог.


 
Johnmen   (2003-05-22 10:48) [10]

>Жук ©

Обращаю внимание, что у Соловьев © (22.05.03 09:42) обработчик на KeyPress. :) Это существенно...


 
Соловьев   (2003-05-22 10:54) [11]


> Может, тогда код не трогать, а что-то в них поменять ?

у меня win2k - тоже писк, это появилось после сброса биоса, настроить нет времени, надо по форумам полазить... Если у тебя получиться напиши. А код не трогай - смысл?


> Perform(WM_NEXTDLGCTL,0,0) - не помог.

что хоть произошло?
Про fMain.KeyPreview = true - не забыл?



 
Жук   (2003-05-22 11:23) [12]

2 Johnmen ©
Вы как всегда зрите в корень ! Действительно на KeyPress"e не бибикает.

2 Соловьев
Спасибо !

Однако хотелось бы понять, где собака порылась. :-)



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

Форум: "Основная";
Текущий архив: 2003.06.02;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.009 c
14-3122
vajo
2003-05-14 13:19
2003.06.02
Insufficient memory for this operation


1-2951
Антон Бобиков
2003-05-20 22:24
2003.06.02
Создание компонента


1-2959
Nesterovsky
2003-05-18 11:21
2003.06.02
Как в TListView отображать записи разным шрифтом


1-2947
alords
2003-05-20 12:09
2003.06.02
Как узнать завершение другой проги (DOS или Win)


1-2984
Calm
2003-05-21 14:48
2003.06.02
Создание COM-объекта





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский