我想利用Windows消息系统获得键盘按键信息(主要是主键盘和小键盘),但只能获得字母的大写形式,想请教高手如何区别大小写;
Caps Lock 键没其作用,仅能获得Caps Lock键本身的键值,并且Shift加任何键没有区别,也只能获取Shift键本身的键值,该如何获得这一组合信息?
另外获得的小键盘及功能键变成了小写字母,该如何区分?

解决方案 »

  1.   

    你判断那个做什么,你就判断WM_KEYDOWN就行了,是在你要的值你就要,不是就返回0就是了
    procedure Tfrm_main.AppMessage(var msg:Tmsg;var Handled: Boolean);
    begin
    case msg.message of
       wm_keydown: begin
                   if msg.wParam=17 then 做什么
    end;
    我写的这个是以前写的,对MDI和SDI都有效,你改一下,我判断的是CRTL键盘,你自己找找小键盘是什么,小键盘我看了一下是0-9是 96-105,大键盘是0-9是 48-57