为什么我取不出ListBox里面的数据,请高手指教.

sankt 2006-07-31 09:43:27
void CBox::Sum()
{
int i;
double t;
CString str="";
for(i=0;i<n;++i)
{

m_data.GetText(i,str);
t = atof((LPCTSTR)str);
d += t;
str.Empty();
}
str.Format("d = %0.15lf",d);
MessageBox(str);
}
m_data 为ListBox关联的变量,类型为CListBox
假如现在listbox里面有数据:
10.26
12.36
125.36
100.23
100.2659

现在问题就是d 始终为0.0000,实际上就是没有取到数据?急救!!!

...全文
269 9 打赏 收藏 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
sankt 2006-08-01
  • 打赏
  • 举报
回复
从方法上,我认为是对的,但是奇怪的是就是取不出数据。
sankt 2006-08-01
  • 打赏
  • 举报
回复
ListBox里面的数据,我是使用消息机制从另外一个对话框发送过来的
刚才结果还是取出来,超级郁闷。

还是十分感谢上面的几位大哥相助
sankt 2006-08-01
  • 打赏
  • 举报
回复
感谢,我现在再去试试看
思危 2006-07-31
  • 打赏
  • 举报
回复
对你的程序稍作整理,d改为函数内定义变量,验证正确。你试验一下,如仍有问题,则可能是你在绑定控件变量时有问题。

void CBox::Sum()
{
double d = 0;
CString str;
for(int i=0;i<m_data.GetCount();++i)
{
m_data.GetText(i, str);
d += atof(str);
}
str.Format("d = %0.15lf",d);
MessageBox(str);
}
thesuper 2006-07-31
  • 打赏
  • 举报
回复
没错啊。d = 348.475899999999970
你是2个三角的等级?
折腾_苏州 2006-07-31
  • 打赏
  • 举报
回复
应该是能取到的,调试跟踪一下看看str值有没有取到??
thesuper 2006-07-31
  • 打赏
  • 举报
回复
d和n是什么东西?
sankt 2006-07-31
  • 打赏
  • 举报
回复
自己up
sankt 2006-07-31
  • 打赏
  • 举报
回复
d为成员变量,初始化为0.0

16,550

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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