onkeypress vk_down在tcxdateedit中不起作用

时间:2018-09-27 01:31:36

标签: devexpress delphi-7

我想对cxdateedit进行编码,以便在用户每次按下键盘上的箭头时显示日历,并在每次按下Enter键时搜索数据。因此,我在OnKeyPress事件中进行了编码:

if (key=chr(VK_RETURN)) then begin
zquery4.Close;
zquery4.SQL.Clear;
zquery4.SQL.Add(sql1);
zquery4.Open;
end;
if key=chr(VK_DOWN) then
cxdateedit1.DroppedDown:=true;

虽然VK_RETURN(输入键)可以正常工作,但带有VK_DOWN(向下键)的输入根本不起作用!知道为什么以及如何实现它吗?谢谢!

1 个答案:

答案 0 :(得分:0)

箭头键是操作系统保留的,用于导航。 UI控件不会收到箭头的按键事件,除非该控件明确向OS询问它们的箭头事件,我猜cxDateEdit不会。因此,尝试对cxDateEdit进行子类化,以便可以截获WM_GETDLGCODE消息,并在控件的响应中包含DLGC_WANTARROWS标志。