6.17--如何 保持和恢复 工具栏 的位置和状态?

      现在的Window程序经常被许多控制栏填充的满满的,像工具栏、状态栏、对话框栏和自定义栏等待。下面介绍如何使应用程序记住控制栏的状态和位置,包括其可视还是隐藏、固定还是浮动、水平还是垂直等信息。

 

      很幸运,保持和恢复这些信息只需要简单的调用CFrameWnd::SaveBarState()和CFrameWnd::LoadBarState(),这两个函数的声明都很简单:

      void  CFrameWnd::SaveBarState(LPCTSTR lpszProfileName) const;

      void  CFrameWnd::LoadBarState(LPCTSTR lpszProfileName) const;

lpszProfileName是一个简单的字符串,在函数中用来保存和恢复信息的,在多窗口程序中,每个窗口都有保存自己的控制栏信息。

 

      下面的步骤说明了如何为一个窗口保存控制栏状态:

第一步:用ClassWizard添加WM_CLOSE_消息句柄,在其中调用SaveBarState()函数

const CString strBarState = _T( “MainFrameBarState” );

void CMainFrame::OnClose()
{

      // Save bar state

      SaveBarState(strBarState);

      CMDIFrameWnd::OnClose();
}

 

第二步:在OnCreate()函数的最后调用LoadBarState()函数

int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
      if (CMDIFrameWnd::OnCreate(lpCreateStruct) == -1)
           return -1;

      …………

 

      LoadBarState(strBarState);

      return 0;
}

 

 

 

 

    原文作者:yjkwf
    原文地址: https://blog.csdn.net/yjkwf/article/details/5388799
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞