2016-11-25 82 views
0

我試圖移動一個基類爲CWnd的自定義按鈕,但使用MoveWindow()方法,但每次移動窗口時,先前繪製的窗口仍然可見。我嘗試在父窗口上調用InvalidateWindow,InvalidateRect和UpdateWindow,但都不起作用。我也嘗試RedrawWindow沒有發生。我如何正確地更新父窗口與按鈕的新位置? 這裏是我的示例代碼的MoveWindow後在mfc中刪除以前繪製的窗口

void CCalendarCtrl::Shift() 
{ 
    RECT rc; 
    m_Up.GetWindowRect(&rc); 
    rc.top -= 20; 
    rc.bottom -=20; 
    m_Up.MoveWindow(&rc,TRUE); 
    RedrawWindow(); 

} 

回答