如何实时得在编辑框控件中显示数据
调用动态链接库中的函数PI_qPOS(),此函数能够返回纳米平台的位置,此纳米平台为三维平台,即在X,Y,Z三个方向都能运动,如果输入一个指令让纳米平台运动的话,各个不同的时刻纳米平台所处的位置是不同的,所以我想编个程序,此程序能够实时得显示纳米平台所处的位置,以下是我编的程序,但是运行后发现此程序并不能完成我想要的功能,不知道为什么,请哥哥姐姐们帮忙看一下,问题出在什么地方?void CPi_movefirstDlg::onButton6() //CPi_movefirstDlg是与对话框相关联的类,onButton6()函数的是对话框上的按钮控件的单击相应函数
{
char ch4[10],ch5[10],ch6[10];
int i;
for(i=0;i<200;i+)//我是想编一个for循环,重复调用函数PI_qPOS()200次,来实时得显示纳米台的位置
{
if(!PI_qPOS(ID,szAxes,dPos))/*PI_qPOS()函数是一个BOOL类型的函数,如果没有错误返回TRUE,否则返回FALSE,参数ID是纳米平台的ID,参数szAxes是一个字符数组的数组名,里面存放的纳米平台三个轴的标识符A B C,A代表X轴,B代表Y轴,C代表Z轴。参数dPos是双精度类型的数组的数组名,数组的长度为3,分别用来存放X Y Z轴的当前位置*/
{iError=PI_GetError(ID);
PI_TranslateError(iError,szErrorMessage,1024);
printf("POS?:ERROR%d:%s\n",iError,szErrorMessage);
PI_CloseConnection(ID);}//其实,不想让程序执行if语句后面的{}里面的内容,因为只有PI_qPOS()有错误时才会执行这个{}里面的内容
else
{sprintf(ch4,"%.2f",dPos[0]);
sprintf(ch5,"%.2f",dPos[1]);
sprintf(ch6,"%.2f",dPos[2]);//上面的三段代码是将双精度类型的数值转换成字符类型,以便显示在对话框中的编辑框控件中。
SetDlgItemText(IDC_EDIT9,ch4);
SetDlgItemText(IDC_EDIT10,ch5);
SetDlgItemText(IDC_EDIT11,ch6);}
}//for循环执行完毕
}/*按钮的单击相应函数onButton6()执行完毕,可是在编辑框控件中并没有得到我想要的结果,实际的结果是:我每次鼠标左键单击一次按钮就得到一个数据,下次再单击又得到另一个数据,为什么不能就单击一次就能实时得显示纳米平台在不同时刻的位置呢?*/