【MFC】MFC中调用系统软键盘的几种方法
1.直接运行微软系统自带的虚拟键盘程序“osk.exe”
在普通MFC项目中可以调用ShellExecute或者WinExec方法来直接运行微软系统自带的虚拟键盘程序“osk.exe”,十分方便一句话就可以搞定。
ShellExecute:
WinExec:
程序运行出来的界面:
2.添加"imm.h"和"imm32.lib"来调出软键盘
在你要调出软键盘的代码中引入"imm.h"头文件(若项目里没有这两个文件,则将这两文件复制到项目根目录里,并将"imm.h"添加到工程里)
#pragma comment(lib,"imm32.lib")
然后在调出软键盘的消息事件中添加如下代码即可:
DWORD dwConv, dwSent;
ImmGetConversionStatus(hIMC,&dwConv,&dwSent);
if (dwConv & IME_CMODE_SOFTKBD)
dwConv &= ~IME_CMODE_SOFTKBD;//关闭软键盘
else
dwConv |= IME_CMODE_SOFTKBD; //打开软键盘
ImmSetConversionStatus(hIMC,dwConv,dwSent); //打开或关闭软键盘
ImmReleaseContext(pWnd->m_hWnd,hIMC);
但这种方法似乎只能在输入法开启的状态下才可以打开软键盘
3.在WINCE上运行的MFC中使用SipApi来调出软键盘
为项目添加"sipapi.h"头文件,并在代码中把这个头文件包括进来
调出软键盘的方法调用起来很简单,就一句话而已。
打开软键盘:
关闭软键盘:
运行效果:
转载于:https://www.cnblogs.com/youuuu/archive/2011/07/25/2116370.html
【MFC】MFC中调用系统软键盘的几种方法相关推荐
- android外接键盘打汉字,Android在外接物理键盘时,如何强制调用系统软键盘
Android在外接物理键盘时,如何强制调用系统软键盘? 第一次写,写的不好请见谅 参考: 物理键盘映射过程: 手机/system/usr/keylayout/*.kl :内核将keyCode映射成有 ...
- 系统软键盘Android在外接物理键盘时,如何强制调用系统软键盘?
第一次写,写的不好请见谅 物理键盘映射过程: 手机/system/usr/keylayout/*.kl :内核将keyCode映射成有含义的字符串 KeycodeLabels.h : framewor ...
- Android在外接物理键盘时,如何强制调用系统软键盘
Android在外接物理键盘时,如何强制调用系统软键盘? 可以加群:466059178,可以共同讨论,大神指导 第一次写,写的不好请见谅 参考: http://blog.csdn.net/DrakeB ...
- Visual studio之C# 调用系统软键盘(外部osk.exe)
背景 App需要调用系统软键盘输入数据,自己去实现软键盘有些复杂,现在又是急需,没时间去研究实现软键盘,所以只能调用系统软键盘. 正文 需要添加命名空间, using System.Diagnosti ...
- wincc调用软键盘的几种方法
wincc调用软键盘 软件设置 VB脚本 调用windows系统软键盘 调用wincc自带软键盘 C脚本 调用windows系统软键盘 调用wincc自带软键盘 软件设置 打开"计算机属性& ...
- shell实例第19讲:一个脚本中调用另一个脚本的3种方法
在Shell脚本中调用另一个脚本(3种方法) 准备:主脚本是second.sh,主脚本中调用first.sh 方法1:exec(1)执行方式:exec /home/weibo/shell_test/s ...
- C# 调用系统软键盘帮助类(兼容.netframework2.0)
前言 最近再做触屏系统的时候需要手动调用打开系统软键盘的需求,网上查找到的资料很多,在高版本的fx上也能用,但是刚好我这个现场程序是基于fx2.0开发的,只能在之前的基础上改造支持.目前已经调整到可以 ...
- Android调用系统软键盘删除键 以达到删除输入框里面emoji表情的功能
想必大家在很多项目里都会涉及到聊天功能,为了在聊天里面加入表情,我们可能会去自定义表情列表布局,而一般的表情列表的右下角都有一个删除按钮,用于删除输入框里面的文字.自定义表情.emoji表情等,那么我 ...
- ant中调用外部ant任务的两种方法
国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html 内部邀请码:C8E245J (不写邀请码,没有现金送) 国 ...
最新文章
- 清华张钹院士、人大文继荣院长展开激情辩论:人类对AI的爱痴忧惧
- Hello,Akka
- python print 不能立即打印输出 解决方法
- python字典实现关键字检索_如何实现搜索框的关键词提示功能
- Docker的启动与停止命令
- Python Day8
- 【知识小课堂】 mongodb 之 objectId
- 钟 docker讲解
- linux 下脚本安装 mysql_linux(centos7)下编译安装mysql(数据库)一键安装详解+脚本文件...
- 第四章信息系统安全基础考试要点及真题分布
- Git 日常开发常用命令
- python or的用法_python and or用法详解
- 软件用户手册(软件使用说明书)模板
- 10个超实用的微信小程序 | 值得推荐的微信小程序
- java token 生成_生成 Token
- mysql 锁级别说明 一
- SQL查询语句多表联查、三表关联查询
- 如何制作小游戏(c++教程)(新手版)(1)
- Python基础_Day_01_作业
- 方正科技携手华育国际 助力职业教育发展
热门文章
- 某游戏在华为鸿蒙,华为鸿蒙系统运行安卓游戏出现新状况!安卓换皮论被彻底打脸?...
- adb logcat 保存_保存的logcat在Android设备上的文本文件
- 计算机电子琴弹奏怎么打开,怎么打开电脑键盘电子琴软件
- java 异常机制_深入理解Java异常处理机制
- ux设计师薪水_客户现在也是UX设计师
- Table.Rows.Remove(dr)和Table.Delete()的区别
- solidity字符串拼接
- 八年溯源,如何巧搭区块链
- 复杂性思维中文第二版 附录 A、算法分析
- Laravel Passport里的授权类型介绍