大哥大姐们,怎么用TextOut()在对话框上输出变量的值啊?

louismichel 2003-08-23 10:32:14
如果设置一个double变量m_yw,初始化为10.0,要用TextOut()显示,直接把变量名放到函数里不行,那怎么办呢?
...全文
186 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
louismichel 2003-08-23
  • 打赏
  • 举报
回复
不对呀,楼上的,是这样的吗?可是输出是“the double m_ysb=0",
我是初学者,希望您讲的清楚一些

void CProgrammy7Dlg::OnPaint()
{


double m_ysb=30;
char str[50];
sprintf(str,"the double m_ysb = %d",m_ysb);

CDC * pDC;
pDC=GetDC();
CRect rc;
GetClientRect(&rc);

CPoint OrgPoint(rc.right/2,rc.bottom/2);

pDC->SetTextAlign(TA_CENTER);
pDC->TextOut(OrgPoint.x,OrgPoint.y,str);

}
Jerrylew 2003-08-23
  • 打赏
  • 举报
回复
UP
同意
Healer 2003-08-23
  • 打赏
  • 举报
回复
当然是 %f了:)
shootingstars 2003-08-23
  • 打赏
  • 举报
回复
格式化一个字符串
int i=10;
char str[50];
sprintf(str,"the int i = %d",i);
atEleven 2003-08-23
  • 打赏
  • 举报
回复
double a=0.5;
CString s;
s.Format(_T("%.2f"),a);//2是小数精度
dc.TextOut(0,0,s);

请学会自己看帮助.
kilnut 2003-08-23
  • 打赏
  • 举报
回复
如int i=10;
afxDump<<i<<"\n";
zxszx 2003-08-23
  • 打赏
  • 举报
回复
sprintf(str,"the double m_ysb = %d",m_ysb);
这句话应改为sprintf(str,"the double m_ysb=%f",m_ysb);
icecream007 2003-08-23
  • 打赏
  • 举报
回复
用这样试试....
void CProgrammy7Dlg::OnPaint()
{
double m_ysb=30;
CString str;
str.format("%f",m_ysb);

CDC * pDC=GetDC();
pDC->TextOut(0,0,str);

}

15,980

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧