MFC解决设置控件内容 文字重叠问题

MFC解决设置控件内容 文字重叠问题
在用SetWindowText设置控件内容时,有时候会出字体重叠问题, 调用次数越多,重叠越严重。以下为解决方法。

方法一: RedrawWindow()
1 GetDlgItem(IDC_STATIC)->SetWindowText("your string");   
2 GetDlgItem(IDC_STATIC)->GetParent()->RedrawWindow(); 

缺点: 窗口刷新太频繁,一闪一闪,效果不太好。

方法二: 局部刷新
1  void YourDlg::RefreshControl(UINT uCtlID)   
2 {      
3     CRect   rc;      
4     GetDlgItem(uCtlID)->GetWindowRect(&rc);    
5     ScreenToClient(&rc);      
6     InvalidateRect(rc);      
7 }     

方法三:隐藏和显示
1 GetDlgItem(IDC_STATIC)->ShowWindow(SW_HIDE);
2 GetDlgItem(IDC_STATIC)->ShowWindow(SW_SHOW);

你可能感兴趣的:(MFC解决设置控件内容 文字重叠问题)