не срабатывает событие по нажатию enter

sanich
Дата: 05.12.2007 12:06:15
На компоненте TCombobox висело событие? в котором по нажатию enter кое что выполнялось

procedure TGdsFrm.SupComBoxKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
 if ord(key)=13 then SaveSupplier;
 caption:=inttostr(ord(key));
end;


Сейчас Перестало работать, в капшен выводится код любой кнопки кромер Enter(13).
Хоть убей не могу понять в чем дело, кинул на форму еще один комбо бокс,edit повесил на него такое же событие, и тоже самое поведение, все кнопки возвращают key, а вот enter - нет.


На другой форме этого же проекта, есть подобный combobox, на нем висит событие подобное событие и все отрабатывает!Отскрыл старой модификации этот же проект, там событие SupComBoxKeyDown правильно работает и нажатие enter отрабатывает!


В чем может быть дело?
Страдалецъ
Дата: 05.12.2007 12:15:35
Наверное поставили какой-то кнопке значение Default.
eNose
Дата: 05.12.2007 12:22:11
VK_RETURN
sanich
Дата: 05.12.2007 12:26:40
eNose
VK_RETURN


сравнивал с VK_RETURN и безрезультатно, enter как будто и не нажимали!

Ща попробую все поубирать с формы
eNose
Дата: 05.12.2007 12:27:57
лучше попробуй получить это нажатие от формы и проверь какой контрол в фокусе
Страдалецъ
Дата: 05.12.2007 12:29:09
А действительно, вы похоже выдернули обработку события из Key_Press
if ord(key)=13 
А там Key уже другого типа.
sanich
Дата: 05.12.2007 12:35:44
eNose
лучше попробуй получить это нажатие от формы и проверь какой контрол в фокусе


событие от формы ничево не дало, заметил одну вещь когда нажимал enter, прокрутка DBGrideh, распроложенная под формой (на главной форме) моргала
procedure TGdsFrm.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
 caption:=inttostr(ord(key));
end;

А как проверить какой контрол в фокусе?
sanich
Дата: 05.12.2007 12:38:35
Страдалецъ
А действительно, вы похоже выдернули обработку события из Key_Press
if ord(key)=13 
А там Key уже другого типа.


всмысле?
Страдалецъ
Дата: 05.12.2007 12:52:09
В смысле
if ord(key)=13 
такую комбинацию обычно есть смысл использовать для Key: Char которое мы наблюдаем в KeyPress
Почуствуйте разницу:
KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState)
KeyPress(Sender: TObject; var Key: Char);
Страдалецъ
Дата: 05.12.2007 12:55:25
И вы так и не сказали у вас есть кнопки на форме с default=True ?