class CMainFrame : public CFrameWnd
{
     .....
protected:

     afx_msg void OnPaint();     .....
     .....}void CMainFrame::OnPaint()
{
CPaintDC dc(this); // device context for painting
DrawBackground();}上面设断点根本不近。为什么呢?另一个工程,用calsswizard加的消息函数OnPaint()就可以近断点。
比较了一下,calsswizard和我加的代码一样呀!!!
百思不得其解。另:
我手工加的类CMainFrame,怎么在classwizard中不显示呢,手工该了
.clw文件,虽然classwizard类列表筐中有CMainFrame类,单一点就出错。
问问大侠,手工加的类如何在classwizard中显示。谢谢!!

解决方案 »

  1.   

    就是不知道为什么我手工加消息映射函数
    CMainFrame::OnPaint()
    怎么不响应
      

  2.   

    是不是我没有说清楚呀.
    牛人给看看我自己手工在类中声明消息映射函数  afx_msg void OnPaint();然后在函数OnPaint()中设断点
    调试的时候,不论怎么动窗口都不进断点。
    我的程序就用了两个类
    CWinApp 和 CFrameWnd
    没有用CDocument 和CView类
      

  3.   

    你的工程是Debug版本吗?如果是,使用测试代码试一下OnPaint里面的东西是否真的得到运行了
      

  4.   


    在CPP文件中,加入以下宏了吗?BEGIN_MESSAGE_MAP(CMyView, CView)
    //{{AFX_MSG_MAP(CMyWView)
    ON_WM_PAINT()
    //}}AFX_MSG_MAP
    END_MESSAGE_MAP()
      

  5.   

    呵呵
    惭愧呀,
    被 farland(lyzhou) 说中了.还有一个问题
    我手工加的类
    class CMainFrame : public CFrameWnd
    怎么在classwizard 中不显示呢.
      

  6.   

    关掉VC,删除clw,重新开project
      

  7.   

    关掉VC,删除clw,重新开project这试过N次了,不行.
    手工改.clw文件都不行,虽然可以出现新加的类
    但点就出错!