我从一个txt文件中读取数据,显示到一个CEdit控件中,Edit的大小是固定的,也就是说,遇到边界时需要自动换行,因此设置了Want Return和Multiline属性,但是DrawText时并没有自动换行。
CFont* pOldFont = pDC->SelectObject(m_pFont);
pDC->DrawText(m_strText, -1, rect, DT_LEFT);//CString m_strText存储文件内容
pDC->SelectObject(pOldFont);
请问,是怎么回事啊?只有这么点分了。
CFont* pOldFont = pDC->SelectObject(m_pFont);
pDC->DrawText(m_strText, -1, rect, DT_LEFT);//CString m_strText存储文件内容
pDC->SelectObject(pOldFont);
请问,是怎么回事啊?只有这么点分了。
解决方案 »
- 急!!!关于指针失效异常的捕获
- c++使用ADO连接数据库时的一个错误
- 急求救:如何用MFC编写一简单的关于界面方面的COM组件,在客户端又如何调用(如何传递窗口进组件)?
- 求救:做对话框的高手帮帮忙!!!!
- 在一般的风景照(人和背景)中RGB三色的比重一般是多少?
- 如何拷贝文件夹中的所有文件和文件夹.
- [求助]为什么debug下的.exe文件的执行结果和vc下Ctrl+F5的执行结果不一样?
- 动态编辑框
- 如何导入CAD文件
- 网络编程中,处理数据的速度跟不上udp的接收速度,应该怎么做?
- 做一个公司预算软件,要求各部门填写收据,上报后,老板可以查询汇总打印查询结果,大家给的意见
- BCB调用VC动态库 使用回调函数内存泄漏问题
也没有自绘,就把背景变透明了。
肯定是哪里弄错了,到底是哪里呢?一点一点看还是没有发现
纠结了。。
改成:
pDC->DrawText(m_strText, -1, rect, DT_EDITCONTROL|DT_EDITCONTROL);//
你会发现,在CString 里存储的文本内容在换行地方,由原来的0d 0a 变成了0a.
所以在CEdit中就不换行了。。解决办法:打开文件时,以二进制方式打开,然后将内容传给CString..ALT+6打开内存窗口。楼主去试试。。
直接赋值不就可以么
你自己把文字分割
然后分行显示不就可以吗?