我在对话框上添加了一个Pictures控件,现在要在其上边贴张图;可以修改其属性为BMP然后Image选择资源文件可以实现贴图;
但是我需要贴图的地方太多了,这样程序的exe就特大;有没有办法解决这个问题,应该有按照相对路径进行贴图的吧?

解决方案 »

  1.   

    试试看
    ((CStatic*)GetDlgItem(IDC_PIC))->SetBitmap((HBITMAP)::LoadImage(AfxGetInstanceHandle(),"C:\\1.bmp",...LR_LOADFROMFILE));
      

  2.   

    把图片文件放到程序的相对目录下
    step1:得到一张位图的句柄
    HBITMAP hBmp = (HBITMAP)(::LoadImage( AfxGetInstanceHandle(), _T("source\\hero.bmp"), IMAGE_BITMAP, 
    0, 0, LR_DEFAULTCOLOR | LR_LOADFROMFILE ) );
    step2:
    m_pic.SetBitmap( hBmp );稍微好点儿的办法是 把资源图片打包到一个dll里