CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  界面

CStatic控件没有刷新

楼主shg104(果冻)2006-03-14 15:40:28 在 VC/MFC / 界面 提问

我想在static控件中显示实时的时间,代码在OnTimer内实现,我从CStatic重载了类CStaticEx,在这个类内重载了PresubclassWindow将static控件设为owner   draw,然后在对话框中声明变量m_static,可用m_static.SetWindowText(strTime)(SetWindowText也重载了)时变化的秒数却因为没刷新而重叠起来,请问该在哪刷新?多谢!!! 问题点数:60、回复次数:6Top

1 楼Mackz(在相互)回复于 2006-03-14 15:56:58 得分 10

如果重叠起来显示,证明已经刷新了,关键是要重绘背景。然后又会出现闪烁,就需要用双缓冲。Top

2 楼fairyprince(精灵王子)回复于 2006-03-14 15:58:02 得分 0

不明白为何你要重做一个派生类,直接用   SetWindowText()   不就行了!Top

3 楼MLiang(俺想有栋房)回复于 2006-03-14 16:49:39 得分 0

重画次背景Top

4 楼gd4ever()回复于 2006-03-14 17:53:29 得分 0

干吗用cstatic?直接用edit不就行了?把edit属性设为没有边框,效果不一样?Top

5 楼eastred(东方红)回复于 2006-03-15 09:45:21 得分 0

直接用SetWindowText()  
  或者直接挂个string变量,刷新它就行了。Top

6 楼Atomictry(天影)回复于 2006-03-15 10:03:38 得分 50

//   实现  
  void   CYourDlg::RefreshStaticCtrl(UINT   uCtlID)    
  {  
  CRect   rc;  
  GetDlgItem(nCtlID)->GetWindowRect(rc);  
  ScreenToClient(rc);  
  InvalidateRect(rc);  
  }  
   
  //   每次更新过字符后调用  
  RefreshStaticCtrl(IDC_STATIC_XXX)Top

相关问题

  • TreeView控件刷新?
  • label 控件刷新问题
  • 如何刷新CTreeCtrl控件
  • 树控件刷新问题
  • 树控件刷新问题
  • winform中刷新label控件
  • 树控件不刷新
  • CStatic控件和CEdit控件
  • listview控件刷新数据时闪烁。请问有没有方法?
  • asp.net有没有方法,显示控件内容的时候,不刷新页面

关键词

  • 控件
  • 刷新
  • cstatic
  • 重载
  • setwindowtext
  • rc
  • static

得分解答快速导航

  • 帖主:shg104
  • Mackz
  • Atomictry

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo