简单睡眠()无法在VC ++

时间:2016-04-19 17:14:29

标签: visual-c++

我正在开展一个项目,而不是让图像出现,然后在固定的时间后消失。我认为为此目的的正确功能是Thread::Sleep(),但它似乎不起作用。

this->pictureTConf->Visible = true;  
Thread::Sleep(5000);
this->pictureTConf->Visible = false;

使用此代码,图片随时都不会出现。有什么想法吗?感谢。

PD:使用Visual Studio,Windows窗体和VC ++。

1 个答案:

答案 0 :(得分:0)

将成员变量设置为true是不够的,因为调用Sleep()会阻止代码运行消息循环。请尝试这样做:(这仅用于示例目的,您不应该在“真实”应用程序中执行此操作。)

this->pictureTConf->Visible = true;  
this->pictureTConf->Refresh();
Thread::Sleep(5000);
this->pictureTConf->Visible = false;
this->pictureTConf->Refresh();

另外,正如Chuck所指出的,如果使用计时器,则不需要调用Refresh()。一切都会奏效。

相关问题