比如 现在的时间是 15:00:00
                                       我想在15:00:10时系统自己调用MessageBox("dd");
                                                  该怎样做
                                                          用什么函数
                                               最好有简单的例子
                                               谢谢!!

解决方案 »

  1.   

    不要求太精确的话,直接Sleep(10000);十秒
      

  2.   

    调用SetTimer.然后在OnTimer函数中比较时间,相等就MessageBox出来
      

  3.   

    time_t currentTM;
    time_t startTM;
    time(&startTM);
    while(1)
    {
    time(&currentTM);
    if((currentTM-startTM)>=10)
    {
    MessageBox("ssff");
    break;
    }
    }
      

  4.   

        time1=CTime::GetCurrentTime();
        SetTimer(1,1000,NULL);
    void CMyDlg::OnTimer(UINT nIDEvent)
    {
    // TODO: 在此添加消息处理程序代码和/或调用默认值
    CTime time2;
    time2=CTime::GetCurrentTime();
    CTimeSpan timespan=time2-time1;
            long m=timespan.GetTotalSeconds();
    if (m==10)
    {
        MessageBox("dd");
    }

    CDialog::OnTimer(nIDEvent);
    }
      

  5.   

    如果是计算分钟,就调用GetTotalMinutes()函数,一样的
      

  6.   

       time1=CTime::GetCurrentTime(); 
        SetTimer(1,1000,NULL); 
    void CMyDlg::OnTimer(UINT nIDEvent) 

    // TODO: 在此添加消息处理程序代码和/或调用默认值 
    CTime time2; 
    time2=CTime::GetCurrentTime(); 
    CTimeSpan timespan=time2-time1; 
            long m=timespan.GetTotalSeconds(); 
    if (m==10) 

        MessageBox("dd"); 
    } CDialog::OnTimer(nIDEvent); 
    }
      

  7.   

       time1=CTime::GetCurrentTime(); 
        SetTimer(1,1000,NULL); 
    void CMyDlg::OnTimer(UINT nIDEvent) 

    // TODO: 在此添加消息处理程序代码和/或调用默认值 
    CTime time2; 
    time2=CTime::GetCurrentTime(); 
    CTimeSpan timespan=time2-time1; 
            long m=timespan.GetTotalSeconds(); 
    if (m==10) 

        MessageBox("dd"); 
    } CDialog::OnTimer(nIDEvent); 
    }