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

Gie*_*iel 1 windows delphi touchscreen tablet

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

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

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

GIEL

Elm*_*lmy 7

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

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

编辑:最近我不得不重新考虑我的解决方案......通过设置注册表值,您可以禁用整个应用程序的屏幕键盘.但是,如果你需要一个键盘为你的程序的一些很少使用的功能,只是happend忘记包括屏幕上的键盘,你必须通过SDK/API来控制Windows TextInputPanel.请参阅此链接:以编程方式禁用输入面板.使用PenInputPanel进行手写,使用TextInputPanel进行屏幕键盘.

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

function Get_AttachedEditWindow: SYSINT; safecall;
procedure Set_AttachedEditWindow(AttachedEditWindow: SYSINT); safecall; 
Run Code Online (Sandbox Code Playgroud)