0、首先到自己的工具条上新建一个控件,并命名新ID


1、拷贝FlatComboBox.h和FlatComboBox.cpp到工程目录下
2、建立新类 class CTrackerToolBar : public CToolBar
3、在新类中包含 FlatComboBox.h
4、新变量
public:
CFlatComboBox m_ComboTrackerMode; 5、修改原来自定义工具条变量:
修改前:
CToolBar m_wndTrackerBar;
修改后:
CTrackerToolBar m_wndTrackerBar; 6、在MainFrame.cpp的OnCreate函数中,
m_wndTrackerBar.CreateEx(...........);
m_wndTrackerBar.EnableDocking(CBRS_ALIGN_ANY);//让自己的控件条可以停靠
DockControlBar(&m_wndTrackerBar);//让控件条显示在主框架上
//----------------------------------------------------------------
//在这里添加下拉控件,动态信息
int index = 0;
RECT rect; //找到指定的工具项
while(m_wndTrackerBar.GetItemID(index)!=ID_TRACKER_MODE)
index++; //设置指定工具项的宽度并获取新的区域 80是宽度
m_wndTrackerBar.SetButtonInfo(index, ID_TRACKER_MODE, TBBS_SEPARATOR, 150);
m_wndTrackerBar.GetItemRect(index, &rect); //设置位置
rect.top+=7;
rect.bottom += 200; // 创建并显示
if (!m_wndTrackerBar.m_ComboTrackerMode.Create(WS_CHILD|WS_VISIBLE | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | CBS_HASSTRINGS ,
rect, &m_wndTrackerBar, ID_TRACKER_MODE))
{
TRACE0("Failed to create combo-box\n");
return FALSE;
}
m_wndTrackerBar.m_ComboTrackerMode.ShowWindow(SW_SHOW); //3 D Stationary;3 D Continuous;6 DoF Stationary Time;6 DoF Continuous Time;
m_wndTrackerBar.m_ComboTrackerMode.AddString("3D静态模式");
m_wndTrackerBar.m_ComboTrackerMode.AddString("3D动态模式");
m_wndTrackerBar.m_ComboTrackerMode.AddString("6D静态模式");
m_wndTrackerBar.m_ComboTrackerMode.AddString("6D动态模式");
m_wndTrackerBar.m_ComboTrackerMode.AddString("自动模式");
m_wndTrackerBar.m_ComboTrackerMode.SetCurSel(0); //---------------------------------------------------------------- 7、创建新函数
<pre name="code" class="cpp">void CMainFrame::OnSelectTrackerMode()
{
CString strContent;
m_wndTrackerBar.m_ComboTrackerMode.GetWindowText(strContent);
//AfxMessageBox(strContent);

10、运行结果








SDI在自定义的工具栏上添加下拉控件的更多相关文章

  1. scrollview嵌套下拉控件嵌套recyclerview(不动第三方原基础自定义)

    相信会碰到很多类似的需求,一个列表控件,然后控件上方的一个头部需要自定义,这样就不好有时候也不能加在列表控件的头部了,那必须得嵌套一层scrollview了,没毛病,那么一般的列表控件都是有上拉下拉的 ...

  2. 使用谷歌提供的SwipeRefreshLayout下拉控件,并自定义实现下拉加载的功能

    package com.loaderman.swiperefreshdemo; import android.os.Bundle; import android.os.Handler; import ...

  3. 基于bootstrap的multiple-select下拉控件使用

    multiple-select是一款优秀的下拉菜单控件,能够支持单选和多选. 详细参考文档: JS组件系列——两种bootstrap multiselect组件大比拼 multiple-select ...

  4. 一不小心写了个bootstrap风格下拉控件 JqueryUI + bootstrap

    受够了EasyUI的封闭,Bootstrap虽然华丽但是功能太渣,闲着无聊写个下拉控件玩玩吧,不喜勿喷哈... 第一步:先设计下我的下拉控件的样子 1.既然是bootstrap风格的,我想应该是这样的 ...

  5. 下拉控件jQuery插件

    由于后端开发需要一个下拉控件,能输入,能选择,于是自己写了一个 ;(function($,window,document,undefined){ function Select(el,opt){ th ...

  6. DevExpress控件GridView挂下拉控件无法对上值

    下拉控件使用RepositoryItemLookUpEdit,加入如下事件进行处理. repositoryItemLookUpEdit1.CustomDisplayText += new DevExp ...

  7. 解决easyUI下拉控件无法触发onkeydown事件

    实现在combotree下拉控件中按Backspace键清除combotree选中的值 下面的代码无法获取到键盘事件 <input class="easyui-combotree&qu ...

  8. iOS: 获取UITableViewCell上添加的子控件对应的cell

    一.简单介绍 UITableViewCell是UITableView的核心部分,我们在开发中因为功能的扩展经常需要自定义,以便在其上面添加子控件,例如button.label等.添加后获取这些子控件的 ...

  9. WPF自定义下拉控件

    可以搜索的下拉条 using System; using System.Collections; using System.Collections.Generic; using System.Coll ...

随机推荐

  1. day 67 Django基础三之视图函数

    Django基础三之视图函数   本节目录 一 Django的视图函数view 二 CBV和FBV 三 使用Mixin 四 给视图加装饰器 五 Request对象 六 Response对象 一 Dja ...

  2. 03_mybatis配置文件详解

    1. SqlMapConfig.xml mybatis全局配置文件SqlMapConfig.xml,配置内容如下: *properties(属性) setting(全局配置参数) typeAliase ...

  3. uoj#311 【UNR #2】积劳成疾

    题目 考虑直接顺着从\(1\)填数填到\(n\)发现这是在胡扯 所以考虑一些奇诡的东西,譬如最后的答案长什么样子 显然某一种方案的贡献是一个\(\prod_{i=1}^nw_i^{t_i}\)状物,\ ...

  4. Mybatis Resultmap 简化之超级父类

    我们在写 mybatis多表关联查询的时候 ,要配置  resultmap ,实在太麻烦.而这个超级父类 可以省去我们查询多表时的map public class SuperPojo extends ...

  5. linux centos&Ubuntu&RedHat更换软件源

    linux三大版本更换软件源 前排提示,有的源可能已经失效,如果发现请留言或自行寻找其他源. 1.centos mv /etc/yum.repos.d/CentOS-Base.repo [--path ...

  6. 【学术篇】luogu2184贪婪大陆

    题目在这里哦, 戳一下就可以了~ 题目大意: 支持两种操作,区间添加一种新元素,查询区间颜色种数.. 题目标签是线段树啊,我也本来想写一个线段树,后来写不出来……(我太弱了orz) 然后就草率地看了看 ...

  7. sqllocaldb

    创建实例  sqllocaldb create v12.0 启动实例 sqllocaldb start v12.0

  8. C++ 类设计核查表

    参考:https://www.jianshu.com/p/01601515ca31 <大规模C++程序设计> 函数接口: 1.运算符或非运算符函数? 2.自由或成员运算符? 3.虚函数或非 ...

  9. csps模拟测试7576一句话题解

    题面:https://www.cnblogs.com/Juve/articles/11694454.html 75考了数学,化学和物理... T1: 假设有一个A和B,那么对于每一个j!=i,都有$\ ...

  10. l洛谷 NOIP提高组模拟赛 Day2

    传送门 ## T1 区间修改+单点查询.差分树状数组. #include<iostream> #include<cstdio> #include<cstring> ...