zoukankan      html  css  js  c++  java
  • MFC的CDialogBar和Rollup Control

    1.首先,创建对话框资源:在对话框资源编辑器内生成一个Dialog资源,并将其风格(Style)属性必须设置为Child,不能设置为Overlapped或Popup,否则运行肯定出错;至于边界属性则随用户自己喜欢,一般都是选择None。其余属性也随用户选择,一般没有特殊要求还是选择默认的好。

    2. CMainFrame的头文件里添加CDialogBar m_wndDlgBar;

    3. CMainFrame的实现文件里:

    int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)函数里面添加:

    BOOL bRet = m_wndDlgBar.Create(this, IDD_DIALOG1, WS_VISIBLE|WS_CHILD|CBRS_LEFT, 1);
    m_wndDlgBar.EnableDocking(CBRS_ALIGN_RIGHT|CBRS_ALIGN_LEFT);
    DockControlBar(&m_wndDlgBar);

    就可以加入一个CDialogBar。

    Rollup Control的来源:http://www.codeproject.com/Articles/1058/Rollup-Control

    1. RUNTIME_CLASS method

      Create a dialog box in the resource editor 'ex. IDD_PAGE1' with the WS_CHILD style. Generate the declaration and implementation files class (ex. CPage1Dlg) of your dialog box with the assistance of the MFC Classwizard. Then add DECLARE_DYNCREATE(CPage1Dlg) in the declaration of the class andIMPLEMENT_DYNCREATE(CPage1Dlg, CDialog) in the implementation.

      Then insert the page in this way pwndRollupCtrl->InsertPage("Caption", IDD_PAGE1, RUNTIME_CLASS(CPage1Dlg) );

    2. CDialog::Create method

      As RUNTIME_CLASS method, create a dialog box in the resource editor. Generate the declaration and implementation files class of your dialog box. Then create the dialog box like this

      CPage1Dlg* pwndPage1 = new CPage1Dlg;
      pwndPage1->Create(MAKEINTRESOURCE(IDD_PAGE1), pwndRollupCtrl);

      and insert the page as follows

      pwndRollupCtrl->InsertPage("Caption", pwndPage1 );

      改动在MainFrame.h MainFrame.cpp



  • 相关阅读:
    项目延期原因及应对之道
    我只是来刷屏的
    php学习1留言板的创建
    位运算
    hnu 12264 collisions
    数组和指针的区别
    hnu12263 Gluttonous robot
    解决Mac上安装Zookeeper问题:FAILED TO WRITE PID
    Dubbo问题记录:No provider available for the service xxx from registry localhost:9090
    SqlServer和mysql的日期函数备忘
  • 原文地址:https://www.cnblogs.com/kex1n/p/2377252.html
Copyright © 2011-2022 走看看