久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

OnTimer定時器的工作原理

 涉水I 2011-02-23

UINT SetTimer( UINT nIDEvent, UINT nElapse, void (CALLBACK EXPORT* lpfnTimer)(HWND, UINT, UINT, DWORD) );

Return Value

The timer identifier of the new timer if the function is successful. An application passes this value to the KillTimer member function to kill the timer. Nonzero if successful; otherwise 0.

Parameters

nIDEvent

Specifies a nonzero timer identifier.

nElapse

Specifies the time-out value, in milliseconds.

lpfnTimer

Specifies the address of the application-supplied TimerProc callback function that processes the WM_TIMER messages. If this parameter is NULL, the WM_TIMER messages are placed in the application’s message queue and handled by the CWnd object.

再OnTimer 函數(shù)里 一般的方式是 寫一個 swith(InEvent) case 語句來實現(xiàn) 每隔多久 執(zhí)行一個函數(shù) 來實現(xiàn)定時的功能 可是 如果有好幾個定時器 ,,OnTimer 執(zhí)行的 頻率是怎么樣的呢,?   他求這幾個定時器的第2個參數(shù) 也就是定時間隔的最大是值   作為OnTimer函數(shù)的 執(zhí)行時間間隔   假如有2個定時器 SetTimer(1,500,,NULL) SetTimer(2,,1000,NULL)

OnTimer 里 是這么寫的

    if (nIDEvent == 1)
    {
        Draw1();
    }
    if (nIDEvent == 2)
    {
        Draw2();
    }

    Draw3();

這里 每1秒鐘 Draw 執(zhí)行 Draw1   2次,, 執(zhí)行 Draw2 1次 ,, 但是會執(zhí)行 Draw3      2+1 次

就理解這么多

CODE:

說明 m_edit1_ ,m_edit2_ ,m_edit3_   是 (CEdit )控件變量 int 型

添加消息事件處理函數(shù) OnCreate()    OnTimer 消息映射 OnOK

void CMy444444Dlg::OnOK()
{
    KillTimer(1);
    KillTimer(2);
    CString a;
    UpdateData(TRUE);
    a.Format("%d",m_edit3_);
    MessageBox(a);
    // TODO: Add extra validation here
   
    //CDialog::OnOK();
}

int CMy444444Dlg::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
    if (CDialog::OnCreate(lpCreateStruct) == -1)
        return -1;
   
    // TODO: Add your specialized creation code here
    SetTimer(1,500,NULL);
    SetTimer(2,1000,NULL);
    return 0;
}

void CMy444444Dlg::OnTimer(UINT nIDEvent)
{
    if (nIDEvent == 1)
    {
        Draw1();
    }
    if (nIDEvent == 2)
    {
        Draw2();
    }

    Draw3();
    // TODO: Add your message handler code here and/or call default
   
    CDialog::OnTimer(nIDEvent);
}

void CMy444444Dlg::Draw1()
{
    m_edit1_ ++ ;
    UpdateData(FALSE);
}

void CMy444444Dlg::Draw2()
{
    m_edit2_ ++ ;
    UpdateData(FALSE);
}

void CMy444444Dlg::Draw3()
{
    m_edit3_ ++ ;
    UpdateData(FALSE);
}


    本站是提供個人知識管理的網(wǎng)絡存儲空間,,所有內容均由用戶發(fā)布,不代表本站觀點,。請注意甄別內容中的聯(lián)系方式,、誘導購買等信息,謹防詐騙,。如發(fā)現(xiàn)有害或侵權內容,,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多