主题

1.
创建状态栏 并显示

2.
在状态栏中显示进度条

3.
MDI文档显示和隐藏状态栏

4.

5.

 
 

代码::创建状态栏
并显示

//手动添加3个ICON

/////////////////////////////////////////////////////////////////////////////
// CProject01Dlg dialog
//
// class CProject01Dlg : public
CDialog
// {
// // Construction
// public:
// CProject01Dlg(CWnd* pParent = NULL);
// standard constructor
    CStatusBar m_statusBar;
 
 
// BOOL CProject01Dlg::OnInitDialog()

// TODO: Add extra initialization
here     
BOOL bRec = m_statusBar.Create( this );
UINT nIDS[ 3 ] =
{0x1001,0x1002,0x1003};
bRec = m_statusBar.SetIndicators(nIDS, 9 );
m_statusBar.SetPaneInfo( 0 ,nIDS[ 0 ],SBPS_NORMAL, 100 );
m_statusBar.SetPaneInfo( 1 ,nIDS[ 1 ],SBPS_NORMAL, 200 );
m_statusBar.SetPaneInfo( 2 ,nIDS[ 2 ],SBPS_NORMAL, 32565 );
m_statusBar.SetPaneText( 0 , "提示:" );
RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST, 0 );
 
 
//添加OnSize消息
void CProject01Dlg::OnSize(UINT nType, int cx, int cy)
{
    CDialog::OnSize(nType, cx, cy);
    
    // TODO: Add your message handler code
here
    RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST, 0 );
}
 
//即时显示鼠标所放在菜单的的文字
//在类向导中添加 1 个WindowProc消息
LRESULT
CProject01Dlg::WindowProc(UINT message,
WPARAM wParam, LPARAM lParam)
{
    // TODO: Add your specialized code here and/or call
the base class
    if (message == WM_MENUSELECT)
{
        // OnHotMenu(LOWORD(wParam));
        CMenu
* pMenu = GetMenu();
        if
(pMenu != NULL)
        {
            CString
strText;
            pMenu
- > GetMenuString(( int )LOWORD(wParam),strText,MF_BYCOMMAND);
            m_statusBar.SetPaneText( 1 ,strText);
        }
        
}
    return CDialog::WindowProc(message, wParam, lParam);

}

 

效果图:

 
 
 
    

Code::
MDI文档显示和隐藏状态栏

//Show
void CMainFrame::OnShow() 
{
    if(!m_wndStatusBar.IsWindowVisible())
    {
        m_wndStatusBar.ModifyStyle(0, WS_VISIBLE,SWP_FRAMECHANGED);
    }
    //使状态栏状态生效
    SendMessage(WM_SIZE);
}
    
//Hide
void CMainFrame::OnHide() 
{
    if(m_wndStatusBar.IsWindowVisible())
    {
        m_wndStatusBar.ModifyStyle(WS_VISIBLE, 0,SWP_FRAMECHANGED);
    }
    //使状态栏状态生效
    SendMessage(WM_SIZE);
}

效果图:

 
 

C++ Code_StatusBar的更多相关文章

随机推荐

  1. linux中ls命令详解 (转)

    -a -- 全部(all).列举目录中的全部文件,包括隐藏文件(.filename).位于这个列表的起首处的 .. 和 . 依次是指父目录和你的当前目录.      -l -- 长(long).列举目 ...

  2. windows下ncl生成tiff图(案例)

    一:安装软件和准备数据 1.需要安装Vapor(注意安装路径不要存在空格) 注:版本2.4.2及以后 2.安装NCL,方法见http://www.cnblogs.com/striver-zhu/p/4 ...

  3. 关于python中的__new__方法

    在上篇中,简单的比较了下new方法和init方法,然后结合网上的东西看了一点,发现..看书有的时候说的并不全面. __new__方法是一个类方法,主要作用是来指导如何生成类的实例, 主要用于,当需要生 ...

  4. PHP 新建动态类的代码

    $testObject=(object)array(); $testObject->first="firstValue"; var_dump($testObject); $t ...

  5. JavaScript Type Conversion

    Data Types 5 Data Types string, number, boolean, object, function 3 Object Types object, array, date ...

  6. 关系数据库&&NoSQL数据库

    在过去,我们只需要学习和使用一种数据库技术,就能做几乎所有的数据库应用开发.因为成熟稳定的关系数据库产品并不是很多,而供你选择的免费版本就更加少了,所以互联网领域基本上都选择了免费的MySQL数据库. ...

  7. 转 AI教程 logo

    版权申明:本文原创作者飞屋工作室,感谢飞屋工作室的原创分享! 这篇AI制作标志教程是一个非常实用的教程.通过这个教程飞特的朋友们将会学习到AI制作标志的流程和标志的创作思路.非常实用.推荐过来和飞特的 ...

  8. 20+富有创意的BuddyPress网站

    如果你想构建自己的社区网站,如果你熟悉WordPress,那么用BuddyPress构建它吧!它确实太强大了,本文整理了20个富有创意的BuddyPress网站,看看它们,你也能拥有! 原文地址:ht ...

  9. 事件委托(event delegation)

    事件委托给我带来的第一印象是,如果可以的话请尝试得经常使用它,性能好! 通过字符串拼接后,并进行DOM插入,不会复制事件,此时需要进行事件委托了!!! 优点 事件委托对于web应用程序的性能有如下几个 ...

  10. 安装php5.5

    安装php5.5 ./configure --prefix=/usr/local/php5.5.14/ --with-apxs2=/usr/local/apache2.2.27/bin/apxs -- ...