MyStatusBar.cpp
上传用户:sdpcwz
上传日期:2009-12-14
资源大小:1237k
文件大小:1k
源码类别:

书籍源码

开发平台:

Visual C++

  1. // MyStatusBar.cpp: implementation of the CMyStatusBar class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #include "stdafx.h"
  5. #include "MyStatusBar.h"
  6. #include "Resource.h"
  7. #ifdef _DEBUG
  8. #undef THIS_FILE
  9. static char BASED_CODE THIS_FILE[] = __FILE__;
  10. #endif
  11. IMPLEMENT_DYNCREATE(CMyStatusBar, CStatusBar)
  12. BEGIN_MESSAGE_MAP(CMyStatusBar, CStatusBar)
  13. ON_WM_CREATE()
  14. ON_WM_DESTROY()
  15. ON_UPDATE_COMMAND_UI(ID_INDICATOR_TIME, OnUpdateIndicatorTime)
  16. END_MESSAGE_MAP()
  17. CMyStatusBar::CMyStatusBar()
  18. : CStatusBar()
  19. , m_strClockFormat("%H:%M:%S")//格式化显示时间的格式
  20. {
  21. }
  22. CMyStatusBar::~CMyStatusBar() {
  23. }
  24. void CMyStatusBar::SetClockFormat(LPCTSTR strClockFormat) 
  25. {
  26.      m_strClockFormat = strClockFormat;
  27. }
  28. //创建窗口
  29. int CMyStatusBar::OnCreate(LPCREATESTRUCT lpCreateStruct) 
  30. {
  31.      CStatusBar::OnCreate(lpCreateStruct);
  32.  // 保证每隔一秒时钟会更新,定义一个定时器
  33.      SetTimer(ID_INDICATOR_TIME,1000,NULL);
  34.      return 0;
  35. }
  36. //更新时间
  37. void CMyStatusBar::OnUpdateIndicatorTime(CCmdUI* pCmdUI) {
  38.      pCmdUI->Enable(true);
  39.      pCmdUI->SetText(CTime::GetCurrentTime().Format(m_strClockFormat));
  40. }
  41. //退出窗口
  42. void CMyStatusBar::OnDestroy()
  43. {
  44. //杀掉Timer
  45.      KillTimer(ID_INDICATOR_TIME);
  46.      CStatusBar::OnDestroy();
  47. }