这个问题有点难度,不是简单的消息就可以解决的,可以用两种方面解决: 1。循环关闭输入法: uses Imm; var imehandle:THandle; begin imehandle:=ImmGetDefaultIMEWnd(Handle); PostMessage(imehandle,WM_DESTROY,0,0);2.用HOOK
KAO,终于成功了!! procedure WndProc(var Msg: TMessage);override;procedure TForm1.WndProc(var Msg: TMessage); begin if (Msg.Msg=WM_InputLangChangeRequest) then begin //如果不希望切换,就什么都做处理,否则就 inherited // inherited; end else inherited;end;
WM_USER + 31745winXp 下是這樣
1。循环关闭输入法:
uses
Imm;
var
imehandle:THandle;
begin
imehandle:=ImmGetDefaultIMEWnd(Handle);
PostMessage(imehandle,WM_DESTROY,0,0);2.用HOOK
procedure WndProc(var Msg: TMessage);override;procedure TForm1.WndProc(var Msg: TMessage);
begin
if (Msg.Msg=WM_InputLangChangeRequest) then
begin
//如果不希望切换,就什么都做处理,否则就 inherited
// inherited;
end
else
inherited;end;