IE 工具栏添加多个按钮

minmin987 2010-02-22 04:06:57
各位高手:
我现在用vc6.0 ATL 上实现在IE工具栏添加按钮,现在我只能添加一个按钮 代码如下

SendMessage(m_hWnd, TB_SETEXTENDEDSTYLE, 0, (LPARAM)TBSTYLE_EX_DRAWDDARROWS);
SendMessage(m_hWnd, TB_BUTTONSTRUCTSIZE, sizeof(TBBUTTON), 0);
SendMessage(m_hWnd, TB_SETMAXTEXTROWS, 1, 0L);

TCHAR* pCaption = _T("打印");
int iIndex = ::SendMessage(m_hWnd, TB_ADDSTRING, 0,(LPARAM)pCaption);

HICON hMotley = LoadIcon(_Module.GetResourceInstance(), MAKEINTRESOURCE(IDI_MOTLEY));
m_hImageList = ImageList_Create(16,16, ILC_COLOR16, 1, 0);
int iImageIndex = ImageList_AddIcon(m_hImageList, hMotley);
DestroyIcon(hMotley);
::SendMessage(m_hWnd, TB_SETIMAGELIST, 0, (LPARAM)m_hImageList);

// add the button for the toolbar to the window
TBBUTTON Button;
ZeroMemory((void*)&Button, sizeof(TBBUTTON));
Button.idCommand = IDM_GETURL;
Button.fsState = TBSTATE_ENABLED;
Button.fsStyle = TBSTYLE_BUTTON;//|TBSTYLE_AUTOSIZE;//BTNS_BUTTON | BTNS_AUTOSIZE | BTNS_SHOWTEXT;
Button.dwData = 0;
Button.iString = iIndex;
Button.iBitmap = 0;

::SendMessage(m_hWnd, TB_INSERTBUTTON, 0, (LPARAM)&Button);
return 0;

怎么能通过 TBBUTTON 在IE 上多添加几个按钮

谢谢!!!
...全文
67 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
lion_wing 2010-02-23
  • 打赏
  • 举报
回复
请参考:

TBBUTTON tbb[6];
..........

//菜单分隔符
tbb[0].iBitmap = -1;
tbb[0].idCommand = 0;
tbb[0].fsState = TBSTATE_ENABLED;
tbb[0].fsStyle = TBSTYLE_SEP;
tbb[0].dwData = 0;
tbb[0].iString = -1;

//NEW
tbb[1].iBitmap = 0;
tbb[1].idCommand = IDT_NEW;
tbb[1].fsState = TBSTATE_ENABLED;
tbb[1].fsStyle = TBSTYLE_BUTTON;
tbb[1].dwData = 0;

//OPEN
tbb[2].iBitmap = 1;
tbb[2].idCommand = IDT_OPEN;
tbb[2].fsState = TBSTATE_ENABLED;
tbb[2].fsStyle = TBSTYLE_DROPDOWN;
tbb[2].dwData = 0;

//SAVE
tbb[3].iBitmap = 2;
tbb[3].idCommand = IDT_SAVE;
tbb[3].fsState = TBSTATE_ENABLED;
tbb[3].fsStyle = TBSTYLE_BUTTON;
tbb[3].dwData = 0;

//CUT
tbb[4].iBitmap = 3;
tbb[4].idCommand = IDT_CUT;
tbb[4].fsState = TBSTATE_ENABLED;
tbb[4].fsStyle = TBSTYLE_BUTTON;
tbb[4].dwData = 0;

//菜单分隔符
tbb[5].iBitmap = -1;
tbb[5].idCommand = 0;
tbb[5].fsState = TBSTATE_ENABLED;
tbb[5].fsStyle = TBSTYLE_SEP;
tbb[5].dwData = 0;
tbb[5].iString = -1;


SendMessage(hWndToolbar, TB_ADDBUTTONS, (WPARAM) NUM_BUTTONS, (LPARAM) (LPTBBUTTON) &tbb);


请参见:http://read.pudn.com//downloads129/ebook/552856/Digital%20Photogrammetry%20system/ToolBar.cpp__.htm
lion_wing 2010-02-23
  • 打赏
  • 举报
回复
先记录一下,现在没空,晚上再回复。

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧