我编了一个基于对话框的程序,我想在对话框都显示出来后才调用我的处理函数(因为我的处理函数较费时,如不这样,对话框在显示中间会有停滞),请问应该在对话框类的哪个处理函数下调用?

解决方案 »

  1.   

    OnDraw
    不知是否正确!
    没试过!
    通常我都是手动调用的!
      

  2.   

    可以override(覆写)虚函数
    virtual BOOL Create(
       LPCTSTR lpszClassName,
       LPCTSTR lpszWindowName,
       DWORD dwStyle,
       const RECT& rect,
       CWnd* pParentWnd,
       UINT nID,
       CCreateContext* pContext = NULL
    )
    {
        __super::Create(......);    // 此时窗口已经创建并且显示
        this->DoSomething();   // 做你的事情
    }
      

  3.   

    如果是我,我会考虑用线程,或者在OnInitDialog()函数中开始处用PostMessage发消息调用你的处理函数