如何获得SDI程序中的工具兰上的各个 按钮的具体的坐标? 小弟在用VC编写一个应用程序的界面时,不知道如何获得工具栏上的各个按钮的具体的坐标?如何通过程序获得坐标的位置?或者如何获得鼠标的位置?我需要获得按钮的位置后,才可以在单击工具兰按钮后在按钮的下面显示一个下拉菜单! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 一个ToolBar里面的按钮(或其它控件)可以认为有两个标识值,第一个是所谓的“command ID”,就是你在资源编辑器里给工具条添加按钮的时候设置的那个按钮ID。第二个叫做“Item Index”,是CToolBar类内部使用的,相当于一个窗口的子窗口ID,因为工具条里面的控件不就是工具条的子窗口嘛。在ToolBar类的许多成员函数里面要用到的是这第二个值。要获得按钮的坐标,可以用CToolBar类的GetItemRect()函数。请在MSDN里面查一下这个函数的详细说明。这个函数需要按钮的“Item Index”做参数,而你只知道按钮的“command ID”,在这两者之间建立联系的是CToolBar::GetItemID()。如下:index=0;RECT rect;while(GetItemID(index)!=ID_BUTTON_SLD /*按钮ID*/ ) index++;GetItemRect(index, &rect);这几行代码是在一个从CToolBar类派生的类里面写的,你要不愿意自己另写这么个子类,那就对你程序里AppWizard自动生成的那个ToolBar对象做上面的操作好了。这个对象是CMainFrame类的m_wndToolBar。 int index=0;RECT rect;while(GetItemID(index)!=ID_BUTTON_SLD /*按钮ID*/ ) index++;GetItemRect(index, &rect); 关于窗口中的控件重叠的显示问题 tcp,udp本身有对数据加密,我们在应用层该如何对数据包加密呢,讲讲好的加密算法。 求助!痛苦中。。。关于SDK 100分请教:怎么用SQL语句删除数据库中重复的记录???? 基于对话框的图像处理 加背景音乐 虚拟光驱的实现????? 请教:thunk 是什么意思?是搞什么的? 电脑到底可以做什么? DDK编程问题,include "cfgmgr32.h"时出错 zhangxhsj 、 PioneerMan 、 jiang0730 、 masterz 进来结帐! 怎么通过IIS+ASP调试ASP脚本调用的COM?谁做过? 300求解!!!给点意见也行!
RECT rect;
while(GetItemID(index)!=ID_BUTTON_SLD /*按钮ID*/ ) index++;
GetItemRect(index, &rect);这几行代码是在一个从CToolBar类派生的类里面写的,你要不愿意自己另写这么个子类,那就对你程序里AppWizard自动生成的那个ToolBar对象做上面的操作好了。这个对象是CMainFrame类的m_wndToolBar。
RECT rect;
while(GetItemID(index)!=ID_BUTTON_SLD /*按钮ID*/ ) index++;
GetItemRect(index, &rect);