MFC中Dialog无法输入中文的问题
2016-05-12 19:38
691 查看
前几天整天都在做MFC客户端,做的天昏地暗。毕竟第一次接触,很多东西不理解,都是一边找资料一边做的。出现问题往往就耗费很多功夫、时间,前两天的时间也就解决了两三个bug。
下面要说的是项目基本完成后发现的一个问题:查找对话框中无法输入中文,中文输入法输入的字在Edit框里会变成问号“?”。
一开始以为是CFindReplaceDialog的问题。因为除了查找对话框,其他Dialog都没有这个问题。但是百度、谷歌了半天也没找到靠谱的解决方法,似乎没有哪个属性或者函数是跟输入字符有关的。最后好像也是根据一些晚上的信息得来的灵感,考虑是系统设置(Win8)方面的问题。继续找资料,终于找到yhao浩的《win8.1中部分软件输入中文显示问号问题》(http://blog.csdn.net/yhao2014/article/details/44492525),参考后解决了问题。
首先,情况是这样的:(“中国”这两个字是对话框默认填上的)
![](http://img.blog.csdn.net/20160512223143740?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
输入中文变成?。。英文就没影响
![](http://img.blog.csdn.net/20160512224011948?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
怎么解决?点右下角语言栏,进入语言首选项。
![](http://img.blog.csdn.net/20160512224041611?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
在语言首选项里面看到,中文里面有个“美式键盘”。这个“美式键盘”其实没什么用,反正英文里面就有个“美式键盘”。点中文的“选项”。
![](http://img.blog.csdn.net/20160512224055995?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
删除美式键盘。然后记得在下面点保存按钮啊。(咳咳,别怕,以后想再添加回来的话请戳这篇文章http://iknow.lenovo.com/knowledgeDetail.html?doc_code=136206)
![](http://img.blog.csdn.net/20160512224111111?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
现在语言首选项是这样的。。最后查找对话框能够输入中文了。
![](http://img.blog.csdn.net/20160512224121611?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
===================================================================================================================
没想到在博客写的第一篇正经文章居然这么水。。而且这破问题还弄了我一晚上。。好啦好啦,知道自己太菜,以后会加油的。
下面要说的是项目基本完成后发现的一个问题:查找对话框中无法输入中文,中文输入法输入的字在Edit框里会变成问号“?”。
一开始以为是CFindReplaceDialog的问题。因为除了查找对话框,其他Dialog都没有这个问题。但是百度、谷歌了半天也没找到靠谱的解决方法,似乎没有哪个属性或者函数是跟输入字符有关的。最后好像也是根据一些晚上的信息得来的灵感,考虑是系统设置(Win8)方面的问题。继续找资料,终于找到yhao浩的《win8.1中部分软件输入中文显示问号问题》(http://blog.csdn.net/yhao2014/article/details/44492525),参考后解决了问题。
首先,情况是这样的:(“中国”这两个字是对话框默认填上的)
输入中文变成?。。英文就没影响
怎么解决?点右下角语言栏,进入语言首选项。
在语言首选项里面看到,中文里面有个“美式键盘”。这个“美式键盘”其实没什么用,反正英文里面就有个“美式键盘”。点中文的“选项”。
删除美式键盘。然后记得在下面点保存按钮啊。(咳咳,别怕,以后想再添加回来的话请戳这篇文章http://iknow.lenovo.com/knowledgeDetail.html?doc_code=136206)
现在语言首选项是这样的。。最后查找对话框能够输入中文了。
===================================================================================================================
没想到在博客写的第一篇正经文章居然这么水。。而且这破问题还弄了我一晚上。。好啦好啦,知道自己太菜,以后会加油的。
相关文章推荐
- DIRECTORY_SEPARATOR
- 0512 操作系统进程调度实验
- BZOJ4554 [Tjoi2016&Heoi2016]游戏
- 求自定类型元素的平均
- poj 1064 Cable master(二分搜索)
- 【BZOJ-4515】游戏 李超线段树 + 树链剖分 + 半平面交
- UzysAssetsPickerController中文化
- Android Studio编译NDK app gradle配置
- sdutoj 3362 数据结构实验之图论六:村村通公路(最小生成树(裸的))
- (经典)POJ-3280 回文串DP
- appium for python client scroll to view(not in current screen)
- Partition-方案二:通过 Insert with a subquery 方法
- Android Json解析工具类
- 基于内容的图像检索引擎(以图搜图)
- Android学习笔记五:文件夹创建
- 英语作文模板
- uva624(DP)
- 在指定控件位置弹出popup window
- 操作系统 实验三 进程调度模拟程序
- Docker (一) 运行容器