以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  TextBox控件中文输入怎么由全角改为半角呢?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=118439)

--  作者:wakai
--  发布时间:2018/5/2 22:51:00
--  TextBox控件中文输入怎么由全角改为半角呢?
窗体TextBox控件选了中文输入为true后,输入法默认是全角的,录入数字时老要切换,能改为默认半角吗?
--  作者:有点甜
--  发布时间:2018/5/2 22:58:00
--  

不要设置成【true】,改成切换输入法,enter事件

 

For Each lang As Object In Windows.Forms.InputLanguage.InstalledInputLanguages
    msgbox(lang.LayoutName)
    If lang.LayoutName Like "*搜狗拼音输入法*" Then
        Windows.Forms.InputLanguage.CurrentInputLanguage = lang

        msgbox("切换到搜狗输入法成功")
        Exit For
    End If
Next


--  作者:wakai
--  发布时间:2018/5/2 23:08:00
--  
甜老师,不同客户端装的输入法不一样怎么办
--  作者:有点甜
--  发布时间:2018/5/2 23:33:00
--  
以下是引用wakai在2018/5/2 23:08:00的发言:
甜老师,不同客户端装的输入法不一样怎么办

 

只要 lang.LayoutName 不等于英文即可。

 

你可以判断 拼音、五笔 等关键字,你弹出 lang.LayoutName 看看便知。


--  作者:lindong
--  发布时间:2018/5/3 22:17:00
--  
可以转换一下,
如果text控件绑定了表,则表事件里:
If e.DataCol.name="列名"
e.DataRow("列名")=strtonarrow(e.DataRow("列名"))
End If

如果没绑定:
Dim tex As WinForm.TextBox = e.Form.Controls("TextBox1")
tex.Text=strtonarrow(tex.Text)