delphi 编程问题 输入法

delphi 编程问题 输入法,第1张

分类: 电脑/网络 >>程序设计 >>其他编程语言

问题描述:

在我的窗口中,有个edit 控件,我想当他得到焦点是,输入法马上变成汉字输入,不要再人工切换。

请教高手!

解析:

把edit控件的imemode属性设置成imChinese,然后把imename属性设置好就可以了

先定义一个公共变量 var ImeName : String然后在用户登入的时候 选择输入法 procedure TValidateFrm.FormCreate(Sender: TObject)var i: Integerbegin Combobox1.Clearfor i := 0 to Screen.Imes.Count - 1 do//(呵呵,刷出当前计算机的输入法:) begin Combobox1.Items.Add(Screen.Imes[i])endCombobox1.Text := Screen.Imes[0]end当用户选择完输入法后,给ImeName付值. PubUnit.ImeName := Combobox1.Text然后遍滤 控件 for i := 0 to self.ComponentCount - 1 do begin if Self.Components[i] is TEdit then (Components[i] as TEdit).ImeName := PubUnit.ImeNameif Self.Components[i] is TMemo then (Components[i] as TMemo).ImeName := PubUnit.ImeNameif Self.Components[i] is TDBGrid then (Components[i] as TDBGrid).ImeName := PubUnit.ImeNameend

居心不良啊,想你的程序的运行之后,别人的默认输入法就改了,还没有发现delphi有这样的类和方法,但是WIN系统的默认输入法是放在注册表里的,你用DELPHI修改它的注册表不就行了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11085772.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-13
下一篇 2023-05-13

发表评论

登录后才能评论

评论列表(0条)

保存