首页 > 其他分享 >MFC实现Txt01之手写代码实现输入

MFC实现Txt01之手写代码实现输入

时间:2022-08-15 14:24:59浏览次数:98  
标签:MFC 问题 插入 手写 font Txt01 OnChar nChar

不是很想写这个。。。主要是因为这一块内容都是照着孙鑫那本书上的内容写的,没什么特别之处,而且网上很多这些内容,随便百度一下就有,(第五章,文本编程,放个链接,这位写的还不错)(其实我就是懒,)


 使用的是  VS2015:

写一下我遇到的问题:在OnChar里面接收字符,然后做显示嘛,就这个功能,不过多了一个插入符的,但恰恰是这个插入符搞死我了,如果在OnChar函数里,不写

1 CFont font;
2 font.CreatePointFont(150, _T("华文行楷"), NULL);
3 CFont *pOldFont = dc.SelectObject(&font);
那万事大吉,没有什么问题,但是你要是写了,那问题就来了,看一下运行结果:

 可以发现,每一次换行,都会留下一个插入符,其实你按退格,删除,它也会出现插入符问题,这里忘记测试留图了。

 欸,问题就是这样子的,我还没有能够解决。。。。。很无奈鸭。。

找了一个解决方案,在后面补空格干掉插入符,也就只找到这一个方案了,MFC文本插入符残留


 其实还有一个问题,VS默认使用的Unicode,你要是按照他的代码写,肯定是无法输入中文的,我也遇到过这个问题。。。又去找了半天解决方案 (  Onchar汉字乱码问题  )

1.可以把字符集改了,改成多字节字符集

2.这个就简单了,只需要把OnChar传进来的字符ASCII,nChar参数,用wchar接收就可以了,如下:wchar_t ch = nChar;// (而不是原先的char ch = nChar;)

问题解决!

 

2022-08-15(显然这是很早以前的问题了。。。。0715左右)

标签:MFC,问题,插入,手写,font,Txt01,OnChar,nChar
From: https://www.cnblogs.com/2015-16/p/16588139.html

相关文章

  • MFC画刷绘图(想模仿Microsoft的画图)
    CBrush类,创建画刷对象,通常用于填充一块区域。(此处缺gif,术业有专攻,东西也有专用。。。日后一定补上来,痛哭流涕) 1.创建一个红色画刷绘图:(鼠标左键按下,这个消息响应OnLButto......
  • Spring IoC 常用注解手写实现
    执行流程1.  初始化Spring容器时传入配置类,通过配置类的@ComponentScan注解告知Spring需要扫描的包路径,不在扫描包路径下的@Component等注解修饰的Bean不会被IoC容器......