我有一个static text控件,用来显示图片
我用CRect rect; 
m_pic.GetClientRect(&rect);
得到了static text控件的尺寸。
用int iWidth=m_Image.GetWidth(); 
int iHeight=m_Image.GetHeight();
得到了加载图片的尺寸。如何才能让图片显示在static text控件的中间位置?
其实我最想实现的是:加载图片后,图片可以根据客户区的大小来自己改变,当然图片内容要全部显示出来!有这样方法么?
我用的是CImage类。

解决方案 »

  1.   

    X=(static宽-图片宽)/2  
    Y=(static高-图片高)/2最简单的办法  不过图片大于编辑框只能显示到外面了.你也可以判断如果图片大于static改变一下static大小等于图片大小.或者不改变显示中间区域
      

  2.   

    额 还有就是如果要缩放图片可以用StretchBlt来显示.普通的显示就用bitblt
      

  3.   


    嗯。还有,就是static text控件显示出来的坐标是(270,10)这是根据VS2005右下角的显示看出来的。可是我将这个坐标用到
    m_Image.Draw(pDC->m_hDC,270,10,iWidth,iHeight)时,图片并不是显示在static里面,而且坐标也是(270,10)。
    应该怎么调整坐标?
      

  4.   

    CRect rect; 
    m_pic.GetClientRect(&rect); 
    ScreenToClient(&rect);