在对话框中固定大小的区域上显示bmp,使不同大小的bmp图片都能在同样大小的区域内显示。
如何作到?谢了。

解决方案 »

  1.   

    如果出现失真,可以调用SetStretchMode函数,然后再内存DC拷贝,应该是可以的,我曾经用过!
      

  2.   

    恩,楼上是正解!然后把内存中的东西村成BMP格式即可。
      

  3.   

    如果是DIB,StretchDIB应该吧?
    如果是CDC,StretchBlt,
    如果是HBITMAP;CreateDibSection,然后再来StretchDIB;
    在固定区域显示BMP当然需要拉伸变形了,肯定会失真的.
    如果你原大小显示BMP的某固定大小区域,可以在CDC中,制定SetClipRgn——大概是这样写。
      

  4.   

    我记得应该是调用SetStretchMode函数
    设置一下模式。
    就可以了
      

  5.   

    如果是颜色失真,调用这个m_pMemDC->SetStretchBltMode( COLORONCOLOR);如果是形状失真,没法法?除非你敢需求.不管如何,失真是难免的,只是有时候人眼看不出来.