如何禁用Windows编辑控件上的小触摸键盘

时间:2009-07-16 08:22:03

标签: windows delphi touchscreen tablet

在支持平板电脑的Windows版本中,当编辑控件获得焦点时会出现一个小键盘图标。如果触摸它,会弹出触控键盘。

有没有办法禁用它?如果你有自己的触摸键盘,这是相当不方便的。

我想为代码中的某些编辑控件禁用它,即。我不是在寻找Windows设置。

GIEL

2 个答案:

答案 0 :(得分:7)

嗯,我想迟到的答案总比没有答案好,所以来吧:

您可以为应用程序禁用Windows屏幕键盘。 为此,请启动Regedit并导航到密钥[HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ TabletTIP \ DisableInPlace]。在那里创建一个新的字符串值,将其名称设置为完整的应用程序路径(例如“C:\ Progam Files \ My App \ MyApp.exe”)并将其值设置为“1”。

编辑:最近我不得不重新考虑我的解决方案......通过设置注册表值,您可以为整个应用程序禁用屏幕键盘。但是,如果你需要一个键盘用于你的程序的一些很少使用的功能,只是发生忘记包括屏幕键盘,你必须通过SDK / API控制Windows TextInputPanel。请看这个链接:Disabling the Input Panel Programmatically。 使用PenInputPanel进行手写,使用TextInputPanel进行屏幕键盘。

对于所有那些Delphi程序员:在导入的* _TLB.pas中导入类型库“Microsoft PenInputPanel”和FIX A BUG:更改IPenInputPanel的两种方法的参数类型:

function Get_AttachedEditWindow: SYSINT; safecall;
procedure Set_AttachedEditWindow(AttachedEditWindow: SYSINT); safecall; 

答案 1 :(得分:0)

禁用“触摸键盘和手写面板服务”