在窗口已经创建完成和初始化完成 知道窗口大小的情况下 并且 只调用一次,,有没有这样的消息??在 oncreate 消息下窗口没创建完成 很多工作都做不了。

解决方案 »

  1.   

    WM_SIZE应该是初始化好之后发送的,如果你不改变窗口的话,应该也会发送一次。
      

  2.   

    不是dialog的OnInitialXXX的话,试试View的InitialUpdate~意思类似的,具体的可能没写对~
      

  3.   

    其实,你完全可以自己发送这样一个自定义消息的,比如在WM_CREATE的返回之前,用PostMessage发送一个自定义消息
      

  4.   

    最好用一个500ms的定时器,定时器打开后500ms窗口已经建好了,这个定时器响应一次就可以关掉
      

  5.   


    OnInitDialog就是普通窗口 WM_SHOWWINDOW也是,只是不只调用一次,每次窗口显示的时候都会调用,你可以只处理第一次的
      

  6.   

    WM_SIZE
    里可以.然后你调用这么一句
    if (m_wndA.GetSafeHandle())
    {
     // 做你的事.表示窗口确实创建了.否则可能出错.
    }
      

  7.   

    以前好像有过和LZ一样的需求,有印象。设一个标志,比如:F1=false然后在wm_paint消息里,判断标志是否为假,如为假则执行你的想完成的事,完成后将标志置为真。第一个wm_paint消息来的时候,应该符合LZ的要求。后来也看了别人的程序,用自定义消息也许更专业些。呵呵。