1,工具栏添加一个按钮,设置ID
2,在头文件中声明组合框类对象
CComboBox m_cZoomCombo;
3,初始化组合框
在int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)函数中
加入一下代码,原理:在新加的按钮的位置插入了组合框
// Create the zoom combo box in the toolbar.
//在按钮上创建组合框,按钮位置决定了组合框的位置
int index1 = m_wndToolBar.CommandToIndex(ID_BUTTONZOOMCOMBO);
m_wndToolBar.SetButtonInfo(index1, ID_BUTTONZOOMCOMBO, TBBS_SEPARATOR, 100);//设置组合框的ID,类型(这里是分隔栏),
100是指分隔栏宽度
// 根据分隔符的尺寸rect建立组合框
CRect rect;
m_wndToolBar.GetItemRect(index1, &rect);
m_cZoomCombo.Create(WS_CHILD | WS_VISIBLE | WS_VSCROLL | CBS_DROPDOWNLIST, rect,
&m_wndToolBar, ID_BUTTONZOOMCOMBO);
// 组合框列表内容.
CString szText;
for (int i = 10; i <= 300; i += 10)
{
szText.Format(TEXT("%d %%"), i);
m_cZoomCombo.AddString(szText);
}
m_cZoomCombo.SelectString(0, TEXT("100 %"));
4,添加响应函数
头文件中加入
void OnSelchangeZoom();//函数声明
源文件中加入
映射关系
ON_CBN_SELCHANGE(ID_BUTTONZOOMCOMBO, OnSelchangeZoom)
和函数
void CMainFrame::OnSelchangeCombo()
{
}