重载如下函数void CStaticAS::SetWindowText(LPCTSTR lpszString)
{
CRect rect;
CSize size(0,0);
GetWindowRect(rect);
GetParent()->ScreenToClient(&rect);
CClientDC dc(this);
CFont * pOldFont=dc.SelectObject (GetFont());
size=dc.GetTextExtent (lpszString);
rect.right =rect.left + size.cx ;
rect.bottom =rect.top + size.cy ;
//can't be 'rect+=size' !!!!!!!!
//ClientToScreen(rect);
CWnd::SetWindowText (lpszString);
MoveWindow(rect);
//SetWindowPos(&wndNoTopMost,0,0,size.cx ,size.cy ,SWP_NOMOVE );
dc.SelectObject(pOldFont);
Invalidate();
UpdateWindow();
}
{
CRect rect;
CSize size(0,0);
GetWindowRect(rect);
GetParent()->ScreenToClient(&rect);
CClientDC dc(this);
CFont * pOldFont=dc.SelectObject (GetFont());
size=dc.GetTextExtent (lpszString);
rect.right =rect.left + size.cx ;
rect.bottom =rect.top + size.cy ;
//can't be 'rect+=size' !!!!!!!!
//ClientToScreen(rect);
CWnd::SetWindowText (lpszString);
MoveWindow(rect);
//SetWindowPos(&wndNoTopMost,0,0,size.cx ,size.cy ,SWP_NOMOVE );
dc.SelectObject(pOldFont);
Invalidate();
UpdateWindow();
}