社区
Windows SDK/API
帖子详情
请问WINDOWS的屏幕键盘OSK,有API吗?比如屏蔽掉一些键,放大键盘区域等?
Amuclan
2004-07-13 09:46:54
另外求delphi 实现的屏幕键盘的源码...ccfstt@126.com
50分不够再加 视回应...
...全文
435
6
打赏
收藏
请问WINDOWS的屏幕键盘OSK,有API吗?比如屏蔽掉一些键,放大键盘区域等?
另外求delphi 实现的屏幕键盘的源码...ccfstt@126.com 50分不够再加 视回应...
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Amuclan
2004-07-31
打赏
举报
回复
sendkeys帖:
http://community.csdn.net/Expert/topic/3192/3192795.xml?temp=.6544611
Amuclan
2004-07-31
打赏
举报
回复
本人无能啊 其实并没有实现一个屏幕键盘 因为后来发现自己要做的东西并不要求屏幕键盘那么强大的功能 简单的说我作的是一个触摸屏程序,所以我作的键盘只能向触摸屏程序里的对象输入 不像真正的屏幕键盘可以系统里的所有程序输入.....
其实最关键的是用了VB的一个函数SendKeys 这个函数被封装的及其强大(也可以说是及其傻瓜) 看下面的程序
Form1的代码:
Private Sub Command1_Click()
Call Form2.Show(0, Me)
End Sub
Form2的代码:
Private Sub Command1_Click()
Form1.SetFocus '注意我没有用Form1.Text1.SetFocus
Call SendKeys("sss", True)
End Sub
上面的程序就可以完成:用Form2向Form1的Text1中输入"sss"了(当然要点击Form2的Command1之前你要先点一下Form1的Text1,这很自然,别忘了,你用任何屏幕键盘乃至真实键盘都要先这样做的)
从上面的程序可以看出sendKeys这个函数为我们做了很多事(否则要用若干个API)....至少你应该注意到:我没有用Form1.Text1.SetFocus,就可以给Text1输入"sss"了,你可以在Form1上再加一个Text2,代码不用改,看看效果....再进一步,你可以再添加一个WebBrowser1(Form1上),试试效果,这里你可能会遇到一点麻烦,因为这里有个小秘笈,我就不说了,因为这个不是我发现的...你遇到的小麻烦也很容易解决的...虽然是个小秘笈(说不出为什么就可以解决)....
Delphi上我也找到了SendKeys这个函数,不过并不是Borland为我们封装的,是第三方的,在Delphi4,5光盘上有,网上也可以找到源码,我还发过一个帖子....但是这个看似功能相同的SendKeys却不能完成像上面所举的VB程序一样的功能...只能说还没有VB的SendKeys作的傻瓜...
小弟功力实在太差...其实很希望加强Delphi的那个SendKeys,可惜暂时没那个能力,希望楼上的大侠们能尽快实现!
手指风
2004-07-29
打赏
举报
回复
我是用registryhotkey注册热键来屏蔽一些键的,但Ctrl+alt+del是先判断是否为nt的系统,要是98的话就直接用SystemParametersInfo来屏蔽,nt的就查找任务管理器窗口,一有打开就发送wm_close消息。win键是用别人给我发的一个dll实现的,本人比较笨,看不怎么懂它的代码。也只能想笨的办法。★_★
zfang
2004-07-29
打赏
举报
回复
路过
想知道
tonylk
2004-07-29
打赏
举报
回复
怎么搞定的?说来听听。。。
Amuclan
2004-07-29
打赏
举报
回复
问题已经解决
用VB搞定
大家快进来 散分结帖算了
Windows
屏幕
键
盘
(
osk
.exe)功能详解与使用技巧
屏幕
键
盘
作为操作系统内置的虚拟输入设备,通过软件模拟实现物理
键
盘
的核心功能。其技术原理基于
Windows
API
的输入信号模拟层,能够响应鼠标、触控等多种交互方式。在工程实践中,这种虚拟化输入方案既解决了硬件故障的应急需求,也为特殊场景(如ATM防窃密、医疗消毒环境)提供了可靠替代方案。通过注册表定制和组策略部署,企业用户可以批量配置
osk
.exe的安全策略和界面参数。在触控设备普及的当下,系统级集成的
屏幕
键
盘
相比第三方工具具有更好的安全性和IME兼容性,是远程桌面、多语言输入等场景的基础设施组件。
Qt中系统
屏幕
键
盘
打开与关闭
网上有好多例子,都是实现了打开系统
屏幕
键
盘
的,但是关闭实现不了。 在qt中亲测有效的方法,使用win10的系统。 引入头文件 #include <
Windows
.h> #pragma comment(lib, "user32.lib")//打开
屏幕
键
盘
使用头文件
屏幕
键
盘
有两个,一个
osk
.exe,一个TabTip.exe
osk
键
盘
的打开方式: PVOID OldVal...
开机脚本之——
屏幕
键
盘
v2.2
有时不想使用
键
盘
,仅用鼠标来输入,就可以用
屏幕
键
盘
。 /* -------------------------------- On-Screen Keyboard ——
OSK
() v1.5 By FeiYue This is a small tool similar to the Window's On-Screen Keyboard. Written in function form, easy to invoke in other scripts. ---------------------
Unity PC端调用
Windows
系统软
键
盘
(
OSK
.exe)实现无障碍文本输入
在软件交互设计中,文本输入是基础且关
键
的功能模块,其实现原理通常涉及用户界面与系统输入服务的协同。对于PC端应用,尤其是在触摸屏、大屏设备或无物理
键
盘
的特殊场景下,确保输入功能的普适性成为提升用户体验和产品鲁棒性的重要技术考量。通过进程间通信技术,应用程序可以调用操作系统原生组件,如
Windows
自带的
屏幕
键
盘
程序(
OSK
.exe),这不仅能实现零成本、高兼容性的输入解决方案,还能无缝集成系统输入法,支持多语言复杂输入。这种技术方案的核心价值在于其作为“兜底”机制,保障了应用在各类硬件环境下的基础功能可用性
Unity PC端输入框软
键
盘
唤醒:从
OSK
.exe集成到
Windows
消息通信
本文针对Unity PC端应用在触摸屏设备上输入框无法自动弹出软
键
盘
的问题,提供了稳定可靠的解决方案。通过集成系统自带的
osk
.exe程序,并利用
Windows
API
的FindWindow与PostMessage函数进行窗口通信,实现了点击输入框自动唤醒、失去焦点自动关闭的流畅交互体验。文章详细阐述了实现原理、代码示例及避坑指南,特别适合信息查询机、自助终端等商业项目。
Windows SDK/API
1,184
社区成员
22,326
社区内容
发帖
与我相关
我的任务
Windows SDK/API
Delphi Windows SDK/API
复制链接
扫一扫
分享
社区描述
Delphi Windows SDK/API
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章