procedure TForm1.EditKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
var
Msg: TMsg;
begin
with ComboBox1 do
begin
case Key of
VK_RETURN:begin
TEdit(Sender).Text:= Items[ItemIndex];
PeekMessage(Msg,0,WM_CHAR,WM_CHAR,PM_REMOVE); end;
VK_DOWN: if ItemIndex < Items.Count-1 then
ItemIndex:= ItemIndex + 1;
VK_UP: if ItemIndex > 0 then
ItemIndex:= ItemIndex - 1;
end;
end;
end;