testfield设置不允许编辑,但是发现英文不可以录,但是中文可以录入,这个怎么解决
如题你用的什么版本。目前最新版本这是很常见的功能,没有这个问题。 gw0506 发表于 2016-8-4 11:30
你用的什么版本。目前最新版本这是很常见的功能,没有这个问题。
20 你可以用最新的试试。或者给我一个demo,我这边用23版本,没法重现。 本帖最后由 yangjianlang 于 2016-8-10 01:23 编辑
我用TX ActiveX23也存在这个问题,字母数字不能输入,但是汉字可以输入。已经使用如下代码还是管控不住,请版主指导。This.ole_text.Object.FieldChangeable = False
This.ole_text.Object.FieldDeleteable = False
yangjianlang 发表于 2016-8-10 01:22
我用TX ActiveX23也存在这个问题,字母数字不能输入,但是汉字可以输入。已经使用如下代码还是管控不住,请 ...
Sorry,我又忘了你用的是ActiveX的了。
没错,问题我重现了。不过我也解决不了。ActiveX的控件中没有控制IME的接口,当输入法弹出时,输入内容会在一个叫composite window中,不在控件上。简单说跟没有输入法的时候,走的是不同的机制。
我也尝试在进入field和离开field时做些控制,不过都不成功。暂时我也没有办法了。
我联系厂商,看有没有解决方案。你可能要等几天了。 版主请回复,急需解决! 版主请回复,急需解决! yangjianlang 发表于 2016-8-10 12:20
版主请回复,急需解决!
我回复了啊,目前在等厂商的回复。 厂商回复了,这就是产品的限制,正如我给你解释的原因。而且我估计是在控件内部,没有处理KeyChar消息,所以会被漏掉。
目前的办法只能是接KeyDown和KeyUp消息,用FieldCurrent来确认是哪一个Field,用FieldText去缓存并比较Text是否有变化,变了就设置回去。不过,界面上可能会有闪烁。
页:
[1]
2