bcm1983 发表于 2009-1-1 11:15

moveto函数中使用double

moveto函数中使用double各位大虾们:
      我在用MFC编程的时候,利用moveto和lineto函数,可是这个函数的所接受的参量是int,可是我的函数中必须要利用double类型的函数。

在程序的调试过程中就常常出现:warning
warning:warning C4244: 'argument' : conversion from 'double' to 'int', possible loss of data
当然,这个程序可以运行,可是在每一次的运行的过就出现这个警告。请问大虾们,该如何取消这个警告。或者有什么新的办法,能很好的画线?多谢了!

cooller 发表于 2009-1-2 00:57

使用强制类型转换,将double转换为int型。

bcm1983 发表于 2009-1-8 11:37

后来我解决了
因为我要画曲线图,我就把横坐标放大100倍,纵坐标放大10000倍
就达到我要的整形数据了,强制转化的话0.0002再转也是0许多数据的话就成了0了
那是不行的
坐标还是按原始的坐标进行标就行了

还有一个问题是关于MFC的
请问大侠在哪里发帖呢?

我建立了两个窗口,是基于一个类的
                     CPage1 page1;
        CPage2 page2;
        CPropertySheet sheet("属性表格");
        sheet.AddPage(&page1);
        sheet.AddPage(&page2);
        sheet.DoModal();
就是CPage1和CPage2
在page1窗口中建立了一个编辑框可以输入数据,并先赋初值
在page2窗口中建立了一个按钮可以输出数据,
如下:
void CPage2::OnBUTTONshuchu()
{
        // TODO: Add your control notification handler code here

        CPage1 page1;
        CPage2 page2;
UpdateData(TRUE);

        FILE*out=fopen("E:\\b2.txt","w");
        fprintf(out,"%f\n",page1.m_11);

        fclose(out);
        UpdateData(FALSE);
}

编辑和运行都没问题
但是在b2.txt文本中始终输出的是page1中的初始数据
即使在page1中的编辑框内输入了新的数据,b2.txt文本中的数据也没变化
请问大家是何种原因造成的,我就想在page1中输入数据,而在page2中按个按钮将数据
输出的指定文本。
希望各位大侠给予帮助!谢谢~~!
页: [1]
查看完整版本: moveto函数中使用double