VC在对话框上添加状态栏,没有可视化的控件,要用类来创建。

1、在窗口.h文件中添加成员变量 CStatusCtrl  m_status;

2、在窗口的OnInitDialog函数中添加创建代码:

RECT     m_Rect;     
GetClientRect(&m_Rect);         //获取对话框的矩形区域  
m_Rect.top = m_Rect.bottom-20;    //设置状态栏的矩形区域  
m_Status.Create(WS_CHILD|WS_VISIBLE|CBRS_BOTTOM,m_Rect,this,3);    
  
int nPanel[4]= {100, 300, 300,-1};      //分割尺寸  
m_Status.SetParts(4, nPanel);  //分割状态栏  
m_Status.SetText(_T("这是第一个指示器"),0,0); //第一个分栏加入"这是第一个指示器"  
m_Status.SetText(_T("这是第二个指示器"),1,0); //以下类似  
  
//在第三个窗格中加入ID为IDR_MAINFRAME的图标  
m_Status.SetIcon(3,SetIcon(AfxGetApp()->LoadIcon(IDR_MAINFRAME),FALSE));  
m_Status.ShowWindow(SW_SHOW);  
  
SetTimer(0,1000,NULL);

3、在定时器中改变第一个状态栏panel内容,为当前时间

void CTestDLLDlg::OnTimer(UINT_PTR nIDEvent)  
{  
    CTime t1 = CTime::GetCurrentTime();  
    CString date = t1.Format("%Y-%m-%d %H:%M:%S");  
    m_Status.SetText(date,0,0);  
  
  
    CDialogEx::OnTimer(nIDEvent);  
}