Static控件背景透明時文字覆蓋問題
用pDC->SetBkMode(TRANSPARENT);
設置透明后,要改變控件的文字就會發生文字重疊,如果不使用透明就不會,請問在透明狀態下改變文字如何不發生重疊?
static的背景已經是透明的了,那么殘留的文本應該是畫在static的父窗口上的。
辦法有了:在給static 設置新的文本之后(不是之前!)刷新父窗口。
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);
}