如何在程序中一直保持用户选的输入法, ( 积分: 200 )

  • 主题发起人 主题发起人 yangxiufengcom
  • 开始时间 开始时间
Y

yangxiufengcom

Unregistered / Unconfirmed
GUEST, unregistred user!
在数据编辑界面有几个编辑框(Edit,combobox...),当我录入数据后执行保存数据的代码.
要仍然保持我录入数据时的输入法状态,如:我录入时用五笔,执行保存代码后仍然还是五笔.

当执行修改代码后,仍然保持原用户选的输入法,

可以说:在数据编辑中一直(不管出现什么事伯)要保持用户最后一次选的输入法
 
利用控件的ImeMode和ImeName属性
 
1、将客户所选定输入法放入一全局变量或全局类的一个接口中;
2、在创建窗体时遍历窗体中的控件是否有ImeName属性,如果有就将其设为此输入法;
uses TypInfo;
var i: Integer;
pinfo:PPropInfo;
begin
for i := 0 to ComponentCount-1 do
begin
pInfo:=GetPropInfo(Components.ClassInfo,'ImeName');
if pInfo<>Nil then
SetPropValue(Components,'ImeName',Fsrf);
end;
end;
我的系统中就是这么写的,记得加分啊!:)
 
楼上的可以实现,但用起来还不是很完美。我前几天才搞出来一个,可以很完美的解决输入法打开,在不需要输入法的地方,还可以轻松关闭掉输入法。如有需要,留下你的信箱。
 
DingP, 是如何实现的?
 
感谢anewed:
xx6620063@163.com
 
这个问题其实很有趣的,各位仔细看一下提问的内容,如果按字面上理解,也就是这个问题不需要写什么代码,他的要求是一直保持录入数据时的输入法,注意是一直保持,并没有说要用到的地方自动打开,不用的地方例如拼音码处就自动关闭。
 
后退
顶部