如何在不使用 sleep() 的情况下使用 ontimer 函数延迟进程

How to delay the process using ontimer function without using sleep()?

本文关键字:情况下 ontimer 函数 进程 延迟 sleep      更新时间:2023-10-16

我必须在应用程序窗口中显示 3 张图像,显示每个图像时应该有 10 秒的延迟(即每个图像应该停留 10 秒)。我如何在不使用 sleep() 的情况下使用 ontimer() 来做到这一点。

使用 ON_WM_TIMER()

SetTimer( TIMER_ID, 10000, NULL);

在这里TIMER_ID您可以传递任何唯一 ID。
10000 毫秒 = 10 秒

void CYOURDlg::OnTimer(UINT_PTR nIDEvent)
{
    if(nIDEvent == TIMER_ID) // check timer Id
    {
        // Write your code to show exe
    }
    CDialog::OnTimer(nIDEvent);
}
这将每 10 秒

调用一次,作为我们给定的 10 秒延迟。

当您不想运行计时器时,可以调用KillTimer(TIMER_ID)