在编辑框(Edit等控件)内如何获取系统当前输入法?

解决方案 »

  1.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
        hk : HKL;
        Buffer : array [0..1024] of Char;
    begin
        hk := GetKeyboardLayout(0);
        if ImmIsIME(hk) then
        begin
            ImmGetDescription(hk,Buffer,1024);
            ShowMessage(string(Buffer));
        end;
    end;
      

  2.   

    运行你的代码后,程序出错:
    ImmIsIME(hk) 
    ImmGetDescription(hk,Buffer,1024);
    以上两函数未定义。
    请教如何使用这两个函数
      

  3.   

    这两个函数在delphi提供的Windows SDK可以查到,
    你看看就知道如何使用了
      

  4.   

    ImmIsIME(hk)怎么样用,它只支持32位的系统,但是现在也没有16位的机器阿 
    为什么老是报错,关注中~
      

  5.   

    你好:
       感谢你的回复,能否在qq上向你讨教。
    QQ:375944899