VS2010在工具栏上创建查找组合框,即:CMFCToolBar中加入CMFCToolBarComboBoxButton
1. 添加资源,新加一个ToolBar的资源 IDR_TOOLBAR_SEARCH,并在此工具栏上再加上一个项:取ID为:ID_SEARCH
2. 在MainFrm类中加入如下代码:
变量:
CMFCToolBar m_wndToolBarSearch;
方法:
CMFCToolBarComboBoxButton *m_comboButton; afx_msg LRESULT OnToolbarReset(WPARAM,LPARAM); afx_msg void OnSelChangeClick(); afx_msg void OnClickComboBox();
3. 在MainFrm的消息映射中加入如下代码:
ON_REGISTERED_MESSAGE(AFX_WM_RESETTOOLBAR, OnToolbarReset) ON_COMMAND(ID_SEARCH, &CMainFrame::OnClickComboBox) ON_CBN_SELCHANGE(ID_SEARCH,&CMainFrame::OnSelChangeClick)
4. 在MainFrm的构造函数中修改如下:
CMainFrame::CMainFrame() : m_comboButton( NULL )
5. 在MainFrm的析构函数中加入:
if ( NULL != m_comboButton ) {delete m_comboButton;m_comboButton = NULL; } else ;
6. 添加消息响应函数的实现
LRESULT CMainFrame::OnToolbarReset(WPARAM wp,LPARAM lp) { if ( NULL == m_comboButton ){m_comboButton = new CMFCToolBarComboBoxButton(ID_SEARCH, GetCmdMgr ()->GetCmdImage(ID_SEARCH, FALSE), CBS_DROPDOWN);}else ;m_comboButton->EnableWindow(TRUE);m_comboButton->SetCenterVert();m_comboButton->SetDropDownHeight(10);m_comboButton->SetFlatMode();m_comboButton->AddItem(_T("OPTION1"));m_comboButton->AddItem(_T("OPTION2"));m_comboButton->SelectItem(0);m_wndToolBarSearch.ReplaceButton (ID_SEARCH, *m_comboButton);return 0; }void CMainFrame::OnSelChangeClick() {MessageBox( _T("OnSelChangeClick.") ); }void CMainFrame::OnClickComboBox() {CMFCToolBarComboBoxButton* pSrcCombo = CMFCToolBarComboBoxButton::GetByCmd (ID_SEARCH, TRUE);int index = m_comboButton->GetCurSel();index = pSrcCombo->GetCurSel();CString str;pSrcCombo->GetEditCtrl()->GetWindowText( str );pSrcCombo->AddItem(str);MessageBox( _T("OnClickComboBox: ") + str ); }
7. 在MainFrm的OnCreate中的适当地方添加创建的代码:
if (!m_wndToolBarSearch.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC, CRect(1, 1, 1, 1), IDR_TOOLBAR_SEARCH) ||!m_wndToolBarSearch.LoadToolBar(theApp.m_bHiColorIcons ? IDR_TOOLBAR_SEARCH : IDR_TOOLBAR_SEARCH)){TRACE0("未能创建工具栏\n");return -1; // 未能创建 } // m_wndToolBarSearch.SetWindowText( _T("Search") ); // m_wndToolBarSearch.EnableCustomizeButton(TRUE, ID_VIEW_CUSTOMIZE, strCustomize); // m_wndToolBarSearch.EnableDocking(CBRS_ALIGN_ANY); // DockPane(&m_wndToolBarSearch);
转载于:https://www.cnblogs.com/junx1989/archive/2012/07/24/junx1989_20120724102359.html
VS2010在工具栏上创建查找组合框,即:CMFCToolBar中加入CMFCToolBarComboBoxButton相关推荐
- 【Excel】使用定义名称+数据验证创建二级组合框
[Excel]使用定义名称+数据验证创建二级组合框 在Excel中创建如下样式的二级组合下拉选项框 1.创建二级名称 为学院及专业创建二级名称: 全选要处理的区域->公式->根据所选内容创 ...
- excel 中vb组合框_Excel表中的数据验证组合框
excel 中vb组合框 There are instructions on my Contextures website for using a combo box with data valida ...
- vs2010 删除工具栏上图标
VS2010 中如果要删除工具栏上多余的图标,直接用DEL 键,或右键菜单中的删除选项,却不能完全删除完,删除后留下了,黑块,图标不见,命令照常执行,后来我左键按住不放,往工具条外一拉就删 ...
- php中怎样表示组合框,PHP-从带有组合框的表中获取数据(Codeigniter...
我想从表kendala获取数据N_KENDALA.表" Kendala"与表" Pelayanan"联接 这是我的控制器-> pelayanan.php ...
- python中组合框_Tkinter Python中的多个组合框
我试图用一个配置文件"文件配置.ini文件数据是: 优先级1=正常:farty-blobble-fx.wav:2 优先权8=Reclamacao:buzzy-blop.wav:3 优先级3= ...
- 在linux桌面上创建一个文本,如何在Ubuntu中创建文档
有几种方法可以在Ubuntu中使用GUI和命令行创建文档.所有这些方法都非常简单易用.您可能早些时候已在Ubuntu中将这些方法用于其他目的.但是,在本文中,我们将向您展示在Ubuntu中创建文档的8 ...
- 【MFC】带组合框的工具栏
00. 目录 文章目录 00. 目录 01. 案例概述 02. 开发环境 03. 关键技术 04. 程序设计 05. 秘笈心法 06. 源码下载 07. 附录 01. 案例概述 在Office软件中经 ...
- java 创建组合框_java列表框和组合框中的Swing如何使用
列表框和组合框在Swing中工作就像它们在老的AWT中工作一样,但如果我们需要它,它们同样被增加功能.另外,它也更加的方便易用.例如,JList中有一个显示String数组的构建器(奇怪的是同样的功能 ...
- 【MFC】学习笔记:常用控件之组合框(Combo Box)
01.目录 目录 01.目录 02.控件介绍 03.控件的消息通知函数 04.创建组合框控件及成员函数介绍 4.1 组合框的创建 4.2 CComboBox类的主要成员函数 05.应用实例 06.总结 ...
最新文章
- 乐乐茶完成近2亿元Pre-A轮融资,祥峰投资领投
- vue 2个方法先后执行_演讲你早该知道的2个演讲方法
- xmpp muc 群聊协议 1
- php多用户商城,php多用户商城选择开源的好
- 转载:一文带你入门统计学(附资源)
- 科大星云诗社动态20220104
- ATEN命令--北大青鸟benet课程
- 红帽Openshift:入门–云中的Java EE6
- 重磅! flutter视图局部更新
- aiohttp进阶教程
- MyBatis之使用XML配置SQL映射(二)CRUD映射配置
- (转)洞见 | 为什么银行不愿意坐上Fintech这列过山车?
- 大学计算机应用技术专业周记,计算机应用技术实习周记.doc
- 看程序员如何使用Python快速给视频添加字幕
- 软件人才应具备的五种素质
- 使用蓝湖UI效果图网站工具下载图标进行压缩
- 计算机开机硬件检查,开机bios检测硬件信息方法
- 日本80年代芯片战后二次决战
- OpenDRIVE文件格式详解
- 排序(基于Java语言编写)
热门文章
- android悬浮动态权限,android应用内悬浮窗-自动贴边,不需要权限!
- dnf用虚拟机会被制裁吗_差点把DNF搞关服的私服,这次终于被大话西游手游拿下了...
- pic16f630 c语言编程,PIC16f630简单练习程序
- 简单介绍SQL中ISNULL函数使用方法
- XML CDATA概述
- 在 CentOS 8 中删除旧的 Linux 内核
- stm32单片机入门视频教程看哪个?一般用什么软件编程比较好?
- qt获取窗口的右上角位置_如何获得 Qt窗口部件在主窗口中的位置--确定鼠标是否在某一控件上与在控件上的位置...
- JavaScript初学者编程题(4)
- ftp服务器版本信息可被获取,ftp服务器版本信息可被获取