BOOL SImageWnd::SetSkin(ISkinObj *pSkin,int iFrame/*=0*/,BOOL bAutoFree/*=TRUE*/) { if(IsVisible(TRUE)) Invalidate(); if(m_bManaged && m_pSkin) { m_pSkin->Release(); m_bManaged=FALSE; } if(!pSkin) return FALSE; m_pSkin=pSkin; m_iFrame=iFrame; if(bAutoFree) { m_pSkin->AddRef(); m_bManaged=TRUE; }else { m_bManaged=FALSE; } SASSERT(GetParent()); if(m_layout.IsFitContent(PD_ALL) && GetParent()) { //重新计算坐标 RequestRelayout(); } if(IsVisible(TRUE)) Invalidate(); return TRUE; }
void SImageWnd::SetImage(IBitmap * pBitmap) { m_pImg = pBitmap; if(m_layout.IsFitContent(PD_ALL) && GetParent()) { //重新计算坐标 RequestRelayout(); } Invalidate(); }