郁闷,古怪的问题,在CString中加入回车换行符,pdc->TextOut后无效果.

时间:2022-12-02 17:31:26
CString szPercent;
CTimeSpan spn;
spn=CTimeSpan(nBtUsed);
szPercent.Format("Elapsed time \r\n%s",spn.Format("%H:%M:%S"));

CString szPercent,szTmp;
CTimeSpan spn;
spn=CTimeSpan(nBtUsed);
szTmp=spn.Format("%H:%M:%S");
szPercent.Format("Elapsed time \r\n%s",szTmp.GetBuffer(0));
pdc->TextOut(202,157,szPercent);
但最终显示总是:Elapsed time ii12:15:15,是不是TextOut的原因,应该怎么办?(两个II是乱码)

6 个解决方案

#1


textout好像不支持回车换行

#2


TextOut针对的是ASCII字符,不能显示控制字符,而回车换行是控制字符。
我猜的。您把回车换行换成其他控制字符看看能否正常显示……

#3


pdc->TextOut(202,157, "Elapsed time:" ); 
pdc->TextOut(202,157 + 10, "12:15:15"); 

#4


只能用DrawText

#5


用DrawText吧,TextOut不支持换行,得自己算。。。

#6


各位好快!DrawText应该可以了!

#1


textout好像不支持回车换行

#2


TextOut针对的是ASCII字符,不能显示控制字符,而回车换行是控制字符。
我猜的。您把回车换行换成其他控制字符看看能否正常显示……

#3


pdc->TextOut(202,157, "Elapsed time:" ); 
pdc->TextOut(202,157 + 10, "12:15:15"); 

#4


只能用DrawText

#5


用DrawText吧,TextOut不支持换行,得自己算。。。

#6


各位好快!DrawText应该可以了!