我现在创建了一个对话框,想显示图片。,
我是新手,刚开始学。创建对话框是直接在resource view里面的dialog中添加,
然后他自动生成的.h 和.cpp
我想显示一张图片,是通过路径名的。
看到很多人直接在oninitialdialog()里面修改,问题是,我现在找不到这个函数。怎么办

解决方案 »

  1.   

    在对话框中添加一picture控件,然后调用CxImage的函数,很容易实现
      

  2.   

    加入picture控件,关联变量为m_Bmp(类型为control),ID也要改一下。
    在oninitialdialog()里面添加代码如下: //动态加载地图
      CStatic * ps=(CStatic *)GetDlgItem(IDC_STATIC_MAP); //得到Picture控件的指针
     //picture是CStatic类型
      CBitmap cb;
      cb.LoadBitmap(IDB_BITMAP_MAP);
      ps->SetBitmap(HBITMAP(cb)); //强制转为HBITMAP此时运行的话,图片却没有出来,这是因为你还没有把picture控件中的type设置为bitmap类型,设置一下就好。PS:oninitialdialog()这个函数,是消息响应函数,classwizard里面找到消息WM_INITDIALOG添加即可。
      

  3.   

    oninitialdialog是个MFC窗口的虚函数,vs2008中,在类视图中,选择对话框的类,然后点击右键,选择属性->重写
      

  4.   

    UP,类视图->右击属性->重写
      

  5.   

    假设你是CImage img;
    对话框类-属性-重写OnPaint函数
    然后里面写
    img.BitBlt(pDC->m_hDC,//,修改大小,显示图片
    0 ,0, 
    img.GetWidth(),img.GetHeight(), 
    0, 0, 
    SRCCOPY);
    重写OnInitialDialog函数
    添加img.Load(_T("/*路径呢?*/"));