zoukankan      html  css  js  c++  java
  • SDI在自定义的工具栏上添加下拉控件

    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
    ");
           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、运行结果








  • 相关阅读:
    实验四实验报告————Android基础开发
    结对编程之四则运算——第二阶段报告
    实验三实验报告
    结对编程之四则运算——第一阶段报告
    第九周作业
    第八周作业
    第七周实验 实验2
    第七周作业
    第五周作业
    20155336 2017-2018 1 《信息安全系统设计基础》2017-9-27课堂实践
  • 原文地址:https://www.cnblogs.com/skyhuangdan/p/5486785.html
Copyright © 2011-2022 走看看