• Toolbar添加控件;创建多行toolbar;重新排列toolbar


       内容整理自网络,已验证可行。

    1.Toolbar添加控件

    如何在工具栏上添加平面下拉控件http://www.vckbase.com/index.php/wv/285

    效果图如下:

     

    2.创建多行Toolbar

    // ToolBar多行多列显示:

    if (!m_wndToolBar2.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_RIGHT | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_FIXED) ||

        !m_wndToolBar2.LoadToolBar(IDR_TOOLBAR2))

    {

        TRACE0("Failed to create toolbar ");

        return -1; // fail to create

    }

    // 创建工具栏的时候不要指定风格 TBSTYLE_WRAPABLE

    // 注意要将 CBRS_SIZE_DYNAMIC 置换成 CBRS_SIZE_FIXED, 否则无法显示多行工具栏

    for (i=1; i<m_wndToolBar2.GetToolBarCtrl().GetButtonCount(); i+=2)

    m_wndToolBar2.SetButtonStyle(i, TBBS_WRAPPED);

    // 由于多行toolbar是横向排列,若添加分隔符,分隔符是竖向的。

    // 若右侧创建带有风格符的多行Toolbar,可由多个Toolbar拼接,拼接处有分隔符。同时toolbar是EnableDocking的。

     

    3.重新排列Toolbar

    // 重新排列toolbar

    CRect rect;

    m_wndToolBar3.GetWindowRect(&rect);

    this->RecalcLayout(); // 关键的一步,重新排列。Called by the framework when the standard control bars are toggled on or off or when the frame window is resized

    rect.OffsetRect(1300,400);

    DockControlBar(&m_wndToolBar3, AFX_IDW_DOCKBAR_RIGHT, &rect);

    RepositionBars(AFX_IDW_CONTROLBAR_FIRST, AFX_IDW_CONTROLBAR_LAST, 0);

     

  • 相关阅读:
    hdu 1028 Ignatius and the Princess III (n的划分)
    CodeForces
    poj 3254 Corn Fields (状压DP入门)
    HYSBZ 1040 骑士 (基环外向树DP)
    PAT 1071 Speech Patterns (25)
    PAT 1077 Kuchiguse (20)
    PAT 1043 Is It a Binary Search Tree (25)
    PAT 1053 Path of Equal Weight (30)
    c++ 常用标准库
    常见数学问题
  • 原文地址:https://www.cnblogs.com/ant-wjf/p/3357658.html
Copyright © 2020-2023  润新知