我有一个带有某些文本框的Windows Forms VB.NET项目。该程序在带有Windows 10的表格触摸屏中工作我希望在某些文本框中显示仅包含数字的键盘。是否可以在文本框中进行设置,以在用户单击它们时显示键盘数字?
谢谢
[有人建立了一个库,该库实现了一个未记录的COM互操作以处理Window的屏幕键盘(又名OSK)。该项目可以在这里找到:https://github.com/AlexeiScherbakov/osklib,也可以通过NuGet安装。
使用此库,您可以通过调用将启动OSK的代码绑定到文本框:
OnScreenKeyboardSettings.EnableForTextBox(TextBox1)
默认情况下,这不会打开仅数字键盘。相反,用户需要使用OSK更改键盘,然后您需要验证输入内容。
您可以使用10个按钮(从0到9)创建一个新表单每个按钮文本都与其值相对应然后将此代码添加到新表单:
Private Sub buttons(sender As Object, e As EventArgs) Handles Btn0.Click, Btn1.Click, Btn2.Click, Btn3.Click, Btn4.Click, Btn5.Click, Btn6.Click, Btn7.Click, Btn8.Click, Btn9.Click
If yourtextbox.Text = "" Then
yourtextbox.Text = sender.text
Else yourtextbox.Text = yourtextbox.Text & sender.text
End If
End Sub
在您的文本框的鼠标单击事件下
newform.show()