我在dialog模板上有个picture控件,在程序中用LoadBitmap贴上图。
可是在小字体的时候,图会只显示一部分,我修改了属性,图会完整显示,但大小超出了我给它的控件区域。请问如何解决!谢谢!

解决方案 »

  1.   

    http://www.vckbase.com/document/viewdoc/?id=698
      

  2.   

    我原来的程序:this->m_bitmap.DeleteObject();
    this->m_bitmap.LoadBitmap(nID);
    this->m_ctrlBitMap.SetBitmap((HBITMAP)this->m_bitmap.GetSafeHandle());
    //m_ctrlBitMap是控件的变量我用了这个例子写的程序,显示为空啊,请问为什么?
    CWnd* hwnd = GetDlgItem(IDC_GUIDE_STATIC_BITMAP);
    CRect rect;
    hwnd->GetWindowRect(&rect);
    this->ScreenToClient(&rect); HDC hDesDC = hwnd->GetDC()->m_hDC;
    HDC hSrcDC = CreateCompatibleDC(hDesDC);
    CBitmap bitMap;
    bitMap.LoadBitmap(nID);
    HBITMAP hBitmap=(HBITMAP)bitMap.GetSafeHandle();

    BITMAP bm;
    GetObject(hBitmap, sizeof BITMAP, &bm);
    SelectObject(hSrcDC, hBitmap);
    hwnd->GetClientRect(&rect);
    ::SetStretchBltMode(hDesDC,COLORONCOLOR);
    ::StretchBlt(hDesDC, rect.left, rect.top, rect.right, rect.bottom, hSrcDC, 0, 0, bm.bmWidth, bm.bmHeight,+SRCCOPY);