回 帖 发 新 帖 刷新版面

主题:[原创]关于功能键的问题和~~

[color=FF0000]为什么?[/color]
请问:1.我用小键盘上的2,4,6,8键可以改变控键的位置,而用功能键上下左右却不能够,这是为什么啊,并且用keydown事件可以而用keypress事件不能.
     2.button上的cancle属性是干什么用的
真的想知道答案啊,希望那位大哥不吝赐教啊!!
     

回复列表 (共2个回复)

沙发

你指的是方向键吗....

系统没办法直接接收方向键按下/放开的消息
需加上此过程,这就可以了。。..
Private
procedure cmwantspecialkey(var message:tcmwantspecialkey); message cm_wantspecialkey;

(*********cmwantspecialkey获得按下方向键的键盘消息******************)
procedure tfinecontrol1.cmwantspecialkey(var message:tcmwantspecialkey);
begin
  inherited;
  if (message.CharCode=vk_down)or(message.CharCode=vk_up)or(message.CharCode=vk_left)or(message.CharCode=vk_right) then
    message.Result:=1;
end;


button的cancel属性是....
当你按下键盘的Esc键就会执行到button的单击事件。。。相当于定义一个快捷键。。

板凳

谢谢大哥指教,俺回去试试.俺还以为DELPHI不能实现这个功能了.

我来回复

您尚未登录,请登录后再回复。点此登录或注册