在用VC6.0完成mfc作业遇到的问题
我先在按钮事件中动态创建了几个按钮控,之后用SetTimer想要完成动画和模拟。
但是一旦在OnTimer函数中书写修改控件属性的语句,程序运行就无响应。
void CDongtaichuangjianDlg::OnTimer(UINT nIDEvent)
{
// TODO: Add your message handler code here and/or call default
switch(nIDEvent)
{
case 1:
if (worldtime>maxtime)
{
KillTimer(1) ;
break;
}
randpass();
int i,j;
for (i=1;i<=elevatornumber;i++)
{
lifter[i].elevatormove();
}
m_currenttime=worldtime;
for (i=1;i<=elevatornumber;i++)
{
for(j=1;j<=floornumber;j++)
{
//elebutton[(i-1)*floornumber+j]->ShowWindow(SW_HIDE);
//elebuttonD[(i-1)*floornumber+j]->ShowWindow(SW_HIDE);
}
}
m_floor=lifter[1].currentF;
for (i=1;i<=floornumber;i++)
{
//up[i]->ShowWindow((tower.upinquire(i)) ?SW_SHOW:SW_HIDE);
//down[i]->ShowWindow((tower.downinquire(i)) ?SW_SHOW:SW_HIDE);
}
UpdateData(false);
worldtime++;
break ;
}
CDialog::OnTimer(nIDEvent);
}
elebutton、up和down是全局定义的指针数组用来记录生成控件的指针;
注释的语句如果加上程序就会无响应。而同样的语句如果不写在OnTimer里程序就可以运行……