您的位置:首页 > 其它

mfc工具条上简单添加下拉框

2013-04-15 23:10 316 查看
1、vc新建MFC基于文档的项目

2、资源编辑器中编辑工具条,新增一个工具项。

3、新增CToolBar派生类:CComboxToolBar

4、CComboxToolBar中新增共有成员

public
:


CComboBox m_wndZoom;

5、替换CMainFrm类中的类名CToolBar m_wndToolBar;

6、在CMainFrm的OnCreate函数中添加创建:

int

index = 0;


RECT rect;

//找到指定的工具项

while
(m_wndToolBar.GetItemID(index)!=ID_TOOL_ZOOM)

index++;

//设置指定工具项的宽度并获取新的区域80是宽度

m_wndToolBar.SetButtonInfo(index, ID_TOOL_ZOOM, TBBS_SEPARATOR, 80);

m_wndToolBar.GetItemRect(index, &rect);


//设置位置

rect.top+=2;

rect.bottom += 200;


// 创建并显示控件


if
(!m_wndToolBar.m_wndZoom.Create(WS_CHILD|WS_VISIBLE| CBS_AUTOHSCROLL| CBS_DROPDOWNLIST | CBS_HASSTRINGS
, rect,

&m_wndToolBar, ID_TOOL_ZOOM))

{

TRACE0(
"Failed to create combo-box\n"
);

 
return

FALSE;

}

m_wndToolBar.m_wndZoom.ShowWindow(SW_SHOW);


//填充内容

m_wndToolBar.m_wndZoom.AddString(
"123%"
);

m_wndToolBar.m_wndZoom.AddString(
"abc%"
);

m_wndToolBar.m_wndZoom.AddString(
"xyz"
);


//选择默认项

m_wndToolBar.m_wndZoom.SetCurSel(3);


7、资源中工具栏大小处理

8、MainFrm.cpp文件中,添加消息映射:ON_CBN_SELENDOK(ID_TOOL_ZOOM, OnSelectZoomed)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: