用pDC->SetBkMode(TRANSPARENT);
設(shè)置透明后,要改變控件的文字就會(huì)發(fā)生文字重疊,如果不使用透明就不會(huì),請(qǐng)問在透明狀態(tài)下改變文字如何不發(fā)生重疊?
static的背景已經(jīng)是透明的了,那么殘留的文本應(yīng)該是畫在static的父窗口上的。
辦法有了:在給static 設(shè)置新的文本之后(不是之前!)刷新父窗口。
void CTestStaticDlg::OnTimer(UINT nIDEvent)
{
CString strTime;
CTime time = CTime::GetCurrentTime();
strTime = time.Format("%y年%m月%d日 %H:%M:%S");
GetDlgItem(IDC_STATIC)->SetWindowText(strTime);
GetDlgItem(IDC_STATIC)->GetParent()->RedrawWindow(); //就這兩句話而已,呵呵
CDialog::OnTimer(nIDEvent);
}