省事的话画一个dialog大小的frame,否则重载OnEraseBkgnd

解决方案 »

  1.   

    在OnInitDialog里: CRect rect;
    GetClientRect(&rect);
    m_bgStatic.Create(NULL,WS_VISIBLE|
     SS_BITMAP|
     SS_CENTERIMAGE,
       rect,this,BGSTATIC);
    //load a resource bitmap
    m_bgBmp.LoadBitmap(IDB_BGBMP); 
    m_bgStatic.SetBitmap(m_bgBmp);
      

  2.   

    可以实现了,方法如下(根据lazyworm的建议):资源:   Bitmap:IDB_BITMAP1 //位图,可以新建,也可以导入,大于256色不能用资源编辑器编辑
    H: CStatic m_s;//用资源编辑器添加图片框,类型bitmap,tab顺序1,类向导添加控制变量
    CBitmap m_b;//手工添加
    CPP:     OnInitDialog()
             // TODO: Add extra initialization here
    CRect rect; GetClientRect(&rect);
    m_s.MoveWindow(&rect); m_b.LoadBitmap(IDB_BITMAP1); 
    m_s.SetBitmap(m_b);