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