| 工具栏中嵌入组合框--上位机VC   工具栏中嵌入组合框--上位机VC
 功能展示
 各种控件之间的组合使用能够使软件更方便的操作,当前例程在工具栏中嵌入组合框,效果如图。程序初始化时默认向工具栏中嵌入一个组合框,并向组合框中添加多个选项,用鼠标选择组合框内的选项后,后弹出所选的内容
 要点提示
 
 在工具栏中嵌入组合框,可以利用组合框类CComboBox的成员函数Create()实现,只要指定函数中父窗口为工具栏,在指定在工具栏的位置,就可实现嵌入组合框功能; 实现功能 1.因为文档框架工程有默认的工具栏,所以新建基于单文档的应用程序 
 2.在框架窗口类中添加一组合框变量及一函数CComboBox m_ComboBox; BOOLCreateComboBox(UINT nID);并在框架创建函数OnCreate()中调用函数创建组合框; 复制代码BOOL CMainFrame::CreateComboBox(UINT nID)
{
        int nIndex = 0;
        CRect rect;
        //查找按钮
        while (m_wndToolBar.GetItemID(nIndex) != nID)
        {
                nIndex++;
        }
    //为组合框创建一个空白区域
        m_wndToolBar.SetButtonInfo(nIndex, nID, TBBS_SEPARATOR, 80);
        //获得空白区域大小和位置
        m_wndToolBar.GetItemRect(nIndex, &rect);
        //组合框大小和位置
        rect.top += 0;
        rect.bottom += 200;
        //在空白区域创建组合框
        if (!m_ComboBox.Create(WS_CHILD | WS_VISIBLE | CBS_AUTOHSCROLL | 
                CBS_DROPDOWNLIST | CBS_HASSTRINGS, rect, &m_wndToolBar, nID))
    {
                TRACE0("Failed to create combo-box\n");
                return FALSE;
    }
        //显示组合框
        m_ComboBox.ShowWindow(SW_SHOW);
        
复制代码//在组合框中添加字符串
        m_ComboBox.AddString("500%");
        m_ComboBox.AddString("200%");
        m_ComboBox.AddString("150%");
        m_ComboBox.AddString("100%");
        m_ComboBox.AddString("75%");
        m_ComboBox.AddString("50%");
        m_ComboBox.AddString("25%");
        m_ComboBox.AddString("10%");
        m_ComboBox.SetCurSel(3);
        return TRUE;
}
        if (!CreateComboBox(ID_COMBOBOX))//创建组合框
        {
                TRACE0("Failed to create combo box\n");
                return -1;
        }
3.调用函数中ID ID_COMBOBOX为手工向默认工具栏添加的ID; 然后再手动添加组合框内容选择的处理函数 OnSelchangeCombobox()并与组合框进行关联  ON_CBN_SELCHANGE(ID_COMBOBOX,OnSelchangeCombobox) 
 
 
 我们来演示下功能实现的整个过程   如果您认可,可联系功能定制! 如果您着急,充值会员可直接联系发您资料!    
 |