各位专家,大家好。几天前,我曾经发过一个关于在工具栏上如何实现菜单按钮的文章(http://topic.csdn.net/u/20100922/10/3bdf4925-535a-41c3-bdb6-37a22217d472.html),遗憾的是,问题并没有得到完整的解决,这两天我一直在想这个问题,其实,我的需求不外乎是当点击按钮时弹出菜单,至于按钮上是否有一个小箭头就显得无关紧要了,于是,我想到了如下的办法:
在工具栏上添加一个按钮,其ID为ID_TOOLBAR_BUTTON_MENU,为其添加按钮响应函数OnToolbarButtonMenu(位于CMainFrame中),同时,准备一个菜单资源,其ID为IDR_MENU_BUTTON,在OnToolbarButtonMenu中,我添加了如下的代码:
CMenu m_Menu;
m_Menu.LoadMenu(IDR_MENU_BUTTON);
SetMenu(&m_Menu);
我的本意时,当点击工具栏上的自制按钮时,在按钮的左下角弹出菜单资源,可是,弹出的菜单资源的位置不对,跑到了客户区的左上角,并且原来的单文档程序的菜单被替换成了新的菜单,其截图如下:
单击按钮前:
单击按钮后:
在此向各位高手请教一下,我该如何控制菜单资源的位置呢?万分感谢,大家都很熟悉的金山词霸2007上的按钮就是一个单击时弹出菜单类型的按钮,其截图如下:再次对您的热情表示感谢。