前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用工具栏控件中的下拉按钮

使用工具栏控件中的下拉按钮

作者头像
用户3519280
发布2023-07-08 10:59:19
2530
发布2023-07-08 10:59:19
举报
文章被收录于专栏:c++ 学习分享


前言

`提示:这里可以添加本文


提示:以下是本篇文章正文内容,下面案例可供参考

一、一级标题

二级标题

三级标题

四级标题
五级标题
六级标题

一、使用工具栏控件中的下拉按钮

示例:。

项目 8 个参与者 除了标准推送按钮外,工具栏还可以有下拉按钮。 下拉按钮通常由附加向下箭头表示。

备注

仅当设置了 TBSTYLE_EX_DRAWDDARROWS 扩展样式时,才会显示附加的向下箭头。

当用户单击此箭头时(或如果没有箭头,单机按钮本身时),会向工具栏控件的父级发送 TBN_DROPDOWN 通知消息。 然后,可以处理此通知并显示弹出菜单;类似于 Internet Explorer 的行为。

以下过程演示如何使用弹出菜单实现下拉工具栏按钮:

实现下拉按钮

1

创建 CToolBarCtrl 对象后,使用以下代码设置 TBSTYLE_EX_DRAWDDARROWS 样式:

代码语言:javascript
复制
m_ToolBarCtrl.SetExtendedStyle(TBSTYLE_EX_DRAWDDARROWS);

2

为将成为下拉按钮的任何新按钮(InsertButton 或 AddButtons)或现有按钮 (SetButtonInfo) 设置 TBSTYLE_DROPDOWN 样式。 以下示例演示如何修改 CToolBarCtrl 对象中的现有按钮:

代码语言:javascript
复制
TBBUTTONINFO tbi;

tbi.dwMask = TBIF_STYLE;
tbi.cbSize = sizeof(TBBUTTONINFO);
m_ToolBarCtrl.GetButtonInfo(0, &tbi);
tbi.fsStyle |= TBSTYLE_DROPDOWN;
m_ToolBarCtrl.SetButtonInfo(0, &tbi);

3

将 TBN_DROPDOWN 处理程序添加到工具栏对象的父类。

代码语言:javascript
复制
ON_NOTIFY(TBN_DROPDOWN, IDC_TOOLBAR1, &CMyDialog::OnTbnDropDownToolBar1)

4

在新处理程序中,显示相应的弹出菜单。 下面的代码演示了一个方法:

代码语言:javascript
复制
void CMyDialog::OnTbnDropDownToolBar1(NMHDR *pNMHDR, LRESULT *pResult)
{
   LPNMTOOLBAR pToolBar = reinterpret_cast<LPNMTOOLBAR>(pNMHDR);
   ClientToScreen(&(pToolBar->rcButton)); // TrackPopupMenu uses screen coords

   CMenu menu;
   VERIFY(menu.LoadMenu(IDR_MENU1));
   CMenu *pPopup = menu.GetSubMenu(0);
   if (NULL != pPopup)
   {
      pPopup->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON,
                             pToolBar->rcButton.left, pToolBar->rcButton.bottom, this);
   }

   *pResult = 0;
}

总结

提示:这里对文章进行总结:

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-12-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 一、一级标题
    • 二级标题
      • 三级标题
  • 一、使用工具栏控件中的下拉按钮
    • 1
      • 2
        • 3
          • 4
          • 总结
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档