注册 登录
编程论坛 VC++/MFC

在工具条上创建ComboBox控件

hlmzrdongdong 发布于 2011-11-29 19:39, 692 次点击
通常,工具条上只支持按钮控件。但是任何的控件都可以动态的创建,故而可以动态的在工具条上创建ComboBox。在工具条上创建ComboBox控件之前,需要调用CToolBar::SetButtonInfo()函数将要被用来创建成ComboBox的按钮设置成分割器。
首先在CMainFrame类中定义一个ComboBox变量:
CComboBox m_wndComboBox;

然后在CMainFrame类的OnCreate()函数中开始动态创建该控件:
   
程序代码:
m_wndColorBar.SetButtonInfo(2,ID_BUTTON_BLUE,TBBS_SEPARATOR,150);//将工具条上的第3个按钮设置成宽150的分割器  
    m_wndColorBar.GetItemRect(2,rect);//获得该分割器的大小  
    rectrect.bottom=rect.top+150;  
    //调用CComboBox的成员函数Create()创建ComboBox控件,父窗口参数指向工具条  
    if(!m_wndComboBox.Create(WS_CHILD | CBS_DROPDOWN | CBS_AUTOHSCROLL  
        | WS_VSCROLL | CBS_HASSTRINGS,rect,&m_wndColorBar,ID_BUTTON_BLUE))  
    {  
        return -1;  
    }  
    m_wndComboBox.ShowWindow(SW_SHOW);//显示所创建的ComboBox控件  
    m_wndComboBox.AddString("One");//给控件加入一些条目  
    m_wndComboBox.AddString("Two");  
    m_wndComboBox.AddString("Three");  

OK!
0 回复
1