主题

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. loadrunner11录制不成功解决方法

    问题一:loadrunner11录制时events为0的解决办法  刚安装好的11.0,系统环境是:WIN7+IE11+LR11 1.ie去掉工具—internet选项中->高级—>去掉“ ...

  2. asp.net下ajax.ajaxMethod使用方法(转)

    使用AjaxMethod可以在客户端异步调用服务端方法,简单地说就是在JS里调用后台.cs文件里的方法,做一些JS无法做到的操作,如查询数据库     使用AjaxMethod要满足一下几点: 1.如 ...

  3. Windows下Cygwin中使用NCView

    1. 使用cygwin的setup.exe安装 NetCDF, HDF5, Curl, libXaw, libICE, udunits, libexpat 和 libpng: 在选择库界面搜索:&qu ...

  4. Inverse是hibernate双向关系中的基本概念。inverse的真正作用就是指定由哪一方来维护之间的关联关系。当一方中指定了“inverse=false”(默认),那么那一方就有责任负责之间的关联关系,说白了就是hibernate如何生成Sql来维护关联的记录

    <set name ='students' table="students_table" inverse='false'(默认不用写) > <key column ...

  5. (转载)OC学习篇之---归档和解挡

    前几篇文章说到了OC中的Foundation框架,今天我们来看一下OC中的一个重要知识点:归档 OC中的归档就是将对象写入到一个文件中,Java中的ObjectInputStream和ObjectOu ...

  6. Camera拍照声设定

    在某些国家(比如Japan),为了防止偷拍,强制拍照声是需要从Speaker出来的(即使插入耳机的情况下). 实现该功能比较简单的方法就是将拍照声类型设置为Ringtone 或 Alarm 或 Not ...

  7. Archlinux 踩坑实录

    Archlinux 没声音 1. 排查驱动,声卡驱动没问题 2.排查alsa,alsa没问题(并确认声卡存在且取消静音) 3.抱着尝试的心态,安下VLC.然后提示找不到默认声卡设备(大概这个意思),通 ...

  8. Windows Azure 配置多个站点的虚拟网络连接

    通过上一篇"Windows Azure 虚拟网络配置(Site to Site)" 我们建立了可以进行Site to Site连接的虚拟网络,配置过后有些朋友会有疑问:如果需要连接 ...

  9. Error when running Swift3 in REPL

    Traceback (most recent call last): File "", line 1, in NameError: name 'run_one_line' is n ...

  10. error while loading shared libraries: lib******: cannot open shared object file: No such file or directory

    程序编译成功后,运行时错误: error while loading shared libraries: libevent-2.0.so.5: cannot open shared object fi ...