在工具条上创建ComboBox控件
通常,工具条上只支持按钮控件。但是任何的控件都可以动态的创建,故而可以动态的在工具条上创建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!