问题的引出:
我在对话框上需要显示不同的位图,位图信息在数据库里保存,现在需要根据读出的记录,把它添加到弹出菜单里,然后响应,也就是根据不同的子项显示不同的位图.问题: 动态添加很容易,
#define MIN_TOPMENU_ID  0x0888CWnd *pWnd;
CMenu menu;
CRect rc; pWnd = &m_wndToolBar;
menu.CreatePopupMenu();
操作数据库
while(记录还有时){
menu.AppendMenu(MF_STRING,MIN_TOPMENU_ID+i,获得的字段值);
                i++;
         } pWnd->SendMessage(TB_GETRECT, pnmtb->iItem, (LPARAM)&rc);
pWnd->ClientToScreen(&rc);
menu.TrackPopupMenu( TPM_LEFTALIGN | TPM_LEFTBUTTON | TPM_VERTICAL,rc.left, rc.bottom, this, &rc);
menu.DestroyMenu();
现在有了菜单的ID,但没响应的处理函数,所以菜单是灰色的(不能响应),这该如何解决?