输入法的控制(100)

  • 主题发起人 主题发起人 it_boy69
  • 开始时间 开始时间
I

it_boy69

Unregistered / Unconfirmed
GUEST, unregistred user!
如何控制EDIT控件 的输入法?我用了它的 IME 属性,可是在有的计算机上行有的不行我想进入所有EDIT时能设置是中文输入还是英语输入有什么好办法
 
需要设置ImeMode和ImeName。以前我们有一个设置功能,由操作员设置自己喜欢使用什么输入法(好像screen.ImeNames可以获得)。然后在form.Create中,循环遍历所有的TCustomEdit控件,设置其ImeMode和ImeName属性。
 
我就是这样设的,不行啊是不是我设得不对?IMEMODE 应当设成什么?
 
搞个测试程序,界面上放若干个Edit,ImeMode分别设置为不同的属性,看光标焦点进入各个Edit时,输入法的变化情况。对于中文,imAlpha,imChinese,imDontCare都可以(输入法环境是sogo,ImeName=中文 (简体) - 搜狗拼音输入法)。可能有的输入法不可以。
 
各个电脑的输入法不一样 在系统运行的前枚举所有输入法 screen.Imes然后在系统设置中让用户设置默认的输入法czy.srf,然后如同znxia所说的吧输入法加上去 edit1.ImeName=czy.srf;这样就ok了 但是问题也有的 换个电脑,输入发如果没有还需要重换!
 
你需要把操作系统切换到指定的输入法ActivateKeyboardLayout(MyHKL, KLF_ACTIVATE);按照你写的方式,如果第一个EDIT输入法切换为其它,则下一个输入法还会是你设置的那个。要把IMENAME设置为空
 
后退
顶部