描述:
用TBBUTTON结构使用TB_INSERTBUTTON在自己的工具栏上添加按钮,代码如下:
TBBUTTON Button;
ZeroMemory((void*)&Button, sizeof(TBBUTTON));
Button.idCommand = IDM_SEARCH;
Button.fsState = TBSTATE_ENABLED;
Button.fsStyle = BTNS_BUTTON | BTNS_AUTOSIZE | BTNS_SHOWTEXT | TBSTYLE_LIST | TBSTYLE_TOOLTIPS;
Button.dwData = 0;
Button.iString = iIndex;
Button.iBitmap = MAKELONG(0, 0);
::SendMessage(m_hWnd, TB_INSERTBUTTON, 0, (LPARAM)&Button);
然后我handle了WM_COMMAND事件,
MESSAGE_HANDLER(WM_COMMAND, OnCommand)
......
LRESULT OnCommand(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
但是却没有产生这个事件,即用户按下时没有消息产生,请问大家这是怎么回事儿?
解决方案1:
你需要加上这行:
::SendMessage(m_hWnd, TB_SETPARENT, (WPARAM) m_hWnd, 0);
应该就可以了