Для элементов редактирования типа TDbEdit, TRxDBCalcEdit or TDBDateEdit назначим
Code: |
OnKeyDown:=edNameKeyDown |
Сложнее с типами вроде TRxDBLookupCombo. Наш прежний обработчик для них не подходит. Я пытался изменить характер TRxDBLookupCombo - но вовремя опомнился - есть же FormKeyDown;
Code: |
procedure TfmAbProps.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin if (ActiveControl is TRxDBLookupCombo) then begin if Key = vk_down then begin if not (ssAlt in Shift) and not // здесь нельзя обработать нажатие при вызове "выпадающего" (ActiveControl as TRxDBLookupCombo).IsDropDown then begin // и в случае уже "выпвшего" Key := 0; selectnext(ActiveControl, true, true); end; end else if Key = vk_up then begin if not (ActiveControl as TRxDBLookupCombo).IsDropDown then begin Key := 0; selectnext(ActiveControl, false, true); end; end; end; end; |
Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.
ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!