当前位置: 首页 > news >正文

CBCGPRibbon 添加Edit、Combox、Hyperlink控件

编辑框、下拉框、网址按钮等是我们常用的控件,对应的类是

CBCGPRibbonEdit

CBCGPRibbonComboBox

CBCGPRibbonHyperlink

使用实例如下:

//Edit
    CBCGPRibbonEdit* pEdit = new CBCGPRibbonEdit(2001, 200);
    pEdit->SetReadOnly(TRUE);
    pPanelActions->Add(pEdit);

//添加combox
    CBCGPRibbonComboBox *pCombox = new CBCGPRibbonComboBox(2000, TRUE);
    pCombox->AddItem(L"combox1");
    pCombox->AddItem(L"combox2");
    pCombox->SetReadOnly(TRUE);
    pCombox->SetPrompt(_T("Combo Box"));
    pPanelActions->Add(pCombox);

//link
    CBCGPRibbonHyperlink *pHyperlink = 
        new CBCGPRibbonHyperlink(2002, L"文本2", L"http://baidu.com");
    pPanelInfo->Add(pHyperlink);

正常添加之后,发现一个问题是控件灰显,不能点击,经过尝试发现是没有添加事件造成的,

添加的事件如下所示:

afx_msg void OnDummy(UINT id);

ON_COMMAND_RANGE(ID_CONTROL_START, ID_CONTROL_END, OnDummy)

//ID_CONTROL_START是最小的id号ID_CONTROL_END是最大的id号,避免添加的控件不在其中,造成消息无法响应


void CMainFrame::OnDummy(UINT id)
{
    switch (id)
    {
    case 2000:
    {
        CBCGPRibbonComboBox *pCombox = NULL;
        pCombox = DYNAMIC_DOWNCAST(CBCGPRibbonComboBox, m_wndRibbonBar.FindByID(id));
        CString strEditText = pCombox->GetEditText();
        break;
    }
    case 2001:
    {
        break;
    }
    case 2002:
    {
        CBCGPRibbonHyperlink *pHyperlink = NULL;
        pHyperlink = DYNAMIC_DOWNCAST(CBCGPRibbonHyperlink, m_wndRibbonBar.FindByID(id));
        pHyperlink->OpenLink();
        break;
    }
    case 2011:
    {
        break;
    }
    }
}

至此控件可以点击响应了

http://www.lryc.cn/news/119700.html

相关文章:

  • 漫话拥塞控制:BBR 是个单流模型
  • HTML详解连载(1)
  • 最新版本2023UI千月影视APP源码 开源完美版前后端完美匹配 后端基于ThinkPHP框架
  • centos7安装Docker详细步骤(无坑版教程)
  • Python入门自学进阶-Web框架——39、redis、rabbitmq、git——2
  • 了解IL汇编跳转语句
  • JVM运行时五大数据区域详解
  • Vuex 使用教程
  • springboot启动you will need to add ‘org.slf4j‘ to prefer-application-packages异常解决
  • 云原生核心原则和特征
  • 【ElasticSearch入门】
  • SQL | 注释
  • oi知识表+NOIP提高组算法及算法思想总结
  • 【mysql】实现递归查询
  • JUC并发编程之原子类
  • 测试设计中隐藏的边界有哪些?
  • 领航优配:暑期旅游市场热度持续攀升,相关公司业绩有望持续释放
  • 基于 CentOS 7 构建 LVS-DR 集群 及 配置nginx负载均衡
  • docker搭建在线Markdown服务器
  • 打靶练习:WestWild 1.1(一个简单但不失优雅的Ubuntu靶机)
  • 【2.3】Java微服务:sentinel服务哨兵
  • 【C++】开源:abseil-cpp基础组件库配置使用
  • 【GPT-3 】创建能写博客的AI工具
  • [保研/考研机试] KY35 最简真分数 北京大学复试上机题 C++实现
  • 算法备案后,企业需要做什么?合规与执行挑战
  • 云原生应用程序的自动化管理和编排
  • Spring项目整合过滤链模式~实战应用
  • FFmpeg常见命令行(五):FFmpeg滤镜使用
  • 网络编程 tcp udp http编程流程 网络基础知识
  • LaTeX基础学习笔记