117.info
人生若只如初见

MFC工具栏添加EnableDocking()和DockControlBar()提示

添加工具栏并启用停靠功能:
1. 在MFC应用程序框架的主窗口类中,找到工具栏的创建代码。
2. 在创建工具栏的代码之后,调用EnableDocking(CBRS_ALIGN_ANY)函数,以启用工具栏的停靠功能,其中CBRS_ALIGN_ANY参数表示允许工具栏停靠在任何位置。
例如:

BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
{

    // 创建工具栏

    if (!m_wndToolBar.Create(this, TBSTYLE_FLAT, IDR_MAINFRAME))

    {

        TRACE0(“Failed to create toolbar\n”);

        return -1;      // fail to create

    }

    // 设置工具栏样式

    m_wndToolBar.SetPaneStyle(m_wndToolBar.GetPaneStyle() | CBRS_TOOLTIPS | CBRS_FLYBY);

    // 启用工具栏的停靠功能

    EnableDocking(CBRS_ALIGN_ANY);

    // 将工具栏停靠到顶部

    DockControlBar(&m_wndToolBar);

    // …

    // 其他代码

    return TRUE; }

3. 调用DockControlBar()函数,将工具栏停靠到指定的位置,例如顶部或左侧。参数可以是顶部、底部、左侧或右侧的任何方向。
例如,将工具栏停靠到左侧:

DockControlBar(&m_wndToolBar, AFX_IDW_DOCKBAR_LEFT);

或将工具栏停靠到顶部:

DockControlBar(&m_wndToolBar, AFX_IDW_DOCKBAR_TOP);

注意:EnableDocking()和DockControlBar()函数只能在主窗口类中的OnCreateClient()函数或OnInitDialog()函数中调用。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fe05cAzsLAwNXBlU.html

推荐文章

  • 基于MFC怎么实现类的序列化

    在MFC中,可以通过重写CObject类的Serialize()函数来实现类的序列化。下面是一个基于MFC的类的序列化示例: 在类的声明中添加DECLARE_SERIAL宏,将类声明为可序列...

  • MFC怎么判断指定文件是否存在

    在MFC中,可以使用CFile类的Open函数来判断指定文件是否存在。Open函数会尝试打开指定的文件,如果文件打开成功,则说明文件存在;如果文件打开失败,则说明文件...

  • mfc如何获取下拉框的值

    MFC中获取下拉框的值可以通过以下步骤: 在资源编辑器中创建一个下拉框控件,并给它一个唯一的ID。 在对应的对话框类(如CDialog或CPropertyPage)中添加一个成员...

  • MFC中fillsolidrect怎么使用

    在MFC中,FillSolidRect函数用于填充一个矩形区域以指定的颜色。
    使用方法如下: 选择要填充颜色的矩形区域的设备上下文(DC)。可以使用CDC类的实例来表示...

  • sql中nvl函数的用法是什么

    在 SQL 中,NVL 函数用于检查一个表达式是否为 NULL,并在该表达式为 NULL 时返回另一个指定的值。它的基本语法如下:
    NVL(expr1, expr2)
    其中,expr1...

  • win10设备管理器不停的刷新如何解决

    如果您的Windows 10设备管理器不停地刷新,可能是由于以下原因: 驱动程序问题:尝试更新设备的驱动程序,可以在设备管理器中右键单击设备并选择“更新驱动程序”...

  • win11电脑闪屏刷新问题怎么解决

    解决Win11电脑闪屏刷新问题的方法可以尝试以下几种: 更新显卡驱动程序:使用最新的显卡驱动程序,可以通过显卡厂商的官方网站或Windows更新来获取驱动程序的最新...

  • c#中server.mappath的作用是什么

    在C#中,Server.MapPath()方法用于获取指定相对路径的物理路径。它将返回一个字符串,表示在服务器上的文件或目录的物理路径。
    作用: 通过将相对路径作为参...