利用BCGControlBar 实现状态条显示Progressbar

http://www.bcgsoft.com/featuretour/tour144.htm

 

Enhanced Status Bar

The library includes an advanced status bar control, which replaces the standard MFC status bar. It allows you to add animation, text or progress bar to your status bar pane quickly. The status bar comes with the following features:
  • Status bar pane progress bar
  • Status bar pane images, animations and text strings
  • Custom foreground/background pane color (status bar "skin")
  • Mouse events notification (mouse double click handling)
Sample code:
CBCGStatusBar   m_wndStatusBar;
CBitmap         m_bmpStatusBarIcon;

static UINT indicators[] =
{
    ID_INDICATOR_ICON,      // status icon
    ID_SEPARATOR,           // status line indicator
    ID_INDICATOR_PROGRESS,  // progress bar
    ID_INDICATOR_LABEL,     // text label
    ID_INDICATOR_ANIMATION, // animation pane
    ID_INDICATOR_CAPS,
    ID_INDICATOR_NUM,
    ID_INDICATOR_SCRL,
};

int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
    ...

    // Create status bar control:
    if (!m_wndStatusBar.Create(this) ||
        !m_wndStatusBar.SetIndicators(indicators,
          sizeof(indicators)/sizeof(UINT)))
    {
        TRACE0("Failed to create status bar\n");
        return -1;      // fail to create
    }

    // Set pane image:
    m_bmpStatusBarIcon.LoadBitmap (IDB_STATUS);
    m_wndStatusBar.SetPaneIcon (0, m_bmpStatusBarIcon);

    // Set pane progress:
    m_wndStatusBar.EnablePaneProgressBar (1, PROGRESS_MAX);
}

void CMainFrame::OnTimer (UINT nIDEvent)
{
    m_wndStatusBar.SetPaneProgress (1, m_nProgressCurr);
}

posted on 2010-02-22 23:30  cy163  阅读(...)  评论(...编辑  收藏

导航