类向导中断时,将Timer(WM_TIMER)处理程序添加到Visual C++ 6.0中?

War*_* P 1 mfc visual-c++-6 visual-c++

我有一个MFC Visual C++应用程序似乎无法在类向导中工作,但是,我有一个视图(CServerView),我想添加一个WM_TIMER事件处理程序.

我已经想出了如何打电话CWnd::SetTimer,CWnd::KillTimer但十多年来我没有做过的就是修改消息地图.我不确定我应该为我的CView子类修改的地图是ServerView.cpp文件的这部分,还是ServerView.h中的某些部分:

BEGIN_MESSAGE_MAP(CServerView, CListView)
    //{{AFX_MSG_MAP(CServerView)
    ON_COMMAND(ID_DRIVER_START, OnDriverStart)
    ON_UPDATE_COMMAND_UI(ID_DRIVER_START, OnUpdateDriverStart)
        ...
    // Standard printing commands
END_MESSAGE_MAP()
Run Code Online (Sandbox Code Playgroud)

这可能是一件微不足道的事情,但我面临的两个复杂问题是,关于这一点的在线文档都是针对最近的Visual Studio版本的,我在Visual C++ 6.0中坚持这样做

Iso*_*ric 7

在您的头文件中:

afx_msg void OnTimer(UINT_PTR nIDEvent);
Run Code Online (Sandbox Code Playgroud)

在你的cpp文件中:

BEGIN_MESSAGE_MAP(CMyView, CView)
    ON_WM_TIMER()
END_MESSAGE_MAP()

void CMyView::StartTimer
{
    m_nTimerID = SetTimer(2348,100,0);
}

void CMyView::OnTimer(UINT_PTR nIDEvent)
{
    if(nIDEvent==m_nTimerID)
    {
    }
    CView::OnTimer(nIDEvent);
}
Run Code Online (Sandbox Code Playgroud)