永发信息网

MFC里怎么在一个文本框里显示一个变量值?

答案:7  悬赏:30  手机版
解决时间 2021-03-20 08:23
MFC里怎么在一个文本框里显示一个变量值?
最佳答案
直接将变量值转换成CString,在现实到静态文本框。
CString str;
str.Format("%f", a);
SetDlgItemText( IDC_STATIC1, str);
全部回答
默认5位有点多,你可以这样做:
CString str;
double x = 7;
//double x = 7.20000;
//double x = 7.00002;
if((double)((int)x)==x){
str.Format("%d", (int)x);
MessageBox(str);
}else{
str.Format(_T("%f"), x);
str.TrimRight(_T("0"));
MessageBox(str);
}
你可以打开类向导,在变量选项卡给IDC_STATIC1 添加变量 类型选float
然后到时候给变量赋值后 UpdateData(False) 就可以自动将值赋给控件追问赋值后好像并没有显示出变量,文本框仍然显示的是static追答你把UpdateDate写哪里了,变量咋赋的 必须得触发Update函数 比如写在InitDialog里面追问我设了一个button,把它写到OnBnClickedButton里面了,行不?追答可以
GetDlgItem
SetDlgItemText
追问报错了
cannot convert parameter 1 from 'const char [3]' to 'const wchar_t *'
=========================
你应该是用的vs吧,vs新建工程时默认使用了unicode字符集,wchar_t就是unicode对应的字符类型
需要设置下工程属性(Alt+F7)→配置属性→常规→项目默认值→字符集,设置成“未设置”就行了追问谢谢你,请问怎么控制float的小数位数?它默认都是显示小数点后5位,我觉得有点多
在VC.net 9.0里面 要写:str.Format(_T("%.2f"),a);
一楼提供的是一种方法,我再提供两种方法。
1)、
CString str;
str.Format("%f", a);
this->SetDlgItemText(IDC_STATIC1, str);
2)、
CString str;
str.Format("%f", a);
CWnd* pwnd = this->GetDlgItem(IDC_STATIC1);
pwnd->SetWindowText(str);追问报错了
cannot convert parameter 1 from 'const char [3]' to 'const wchar_t *'追答你如果想在小数点后保留2位,就这么写:
str.Format("%.2f", a);
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
高通 骁龙801(MSM8974AC)和高通 骁龙801(MSM8
同是六平方的铜芯线,多股铜芯线和单股铜芯线
东北人最爱的东北大酱,蘸什么都香
安装手机APP禁止权限能正常使用吗
幽娴贞静是什么意思
公司有什么方法可以辞退员工?
福奈特洗衣南宁水晶城店地址在哪,我要去那里
闻子美读《汉书.张良传》的闻是什么意思
死顶尖可以多高转数加工
哪个p图软件可以p成网红脸
联想液晶显示屏出现两条垂直的黑线
百万富翁这个球队是哪个国家的
贫血该做什么运动
手自一体手动挡怎么用
如何有效推行6S现场管理
推荐资讯
日立电梯320公斤井道尺寸
植物大战僵尸2我要办月卡怎么付款
12平方钢材镀锌多少钱
0.27是百分之多少
悦庭楠舍地址在什么地方,想过去办事
方程式汽车服务中心地址在什么地方,想过去办
绝地求生官方答应帮我解封账号了,但是让我上
1.12猎人宠物pvp冰霜抗性需要点吗
洁神洗车行在什么地方啊,我要过去处理事情
ipadapp隐藏的应用怎么找出来
"wikipedia"是什么?它和百度百科哪个更强大
我户口在父母那,但父母去世,但遗嘱没有我,房
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?