查看单个帖子
旧 2005-03-15, 01:29 PM   #1
huangyhg
超级版主
 
huangyhg的头像
 
注册日期: 04-03
帖子: 18592
精华: 36
现金: 249466 标准币
资产: 1080358888 标准币
huangyhg 向着好的方向发展
默认 【讨论】程序添加菜單

http://www.mjtd.com/bbs/dispbbs.asp...ID=32164&page=4
程序添加菜單
void CreateMenus()
{
LPDISPATCH pDisp = NULL;
pDisp = acedGetAcadWinApp()->GetIDispatch(TRUE);
if (pDisp == NULL)
return;

IAcadApplication *acadApp = NULL;
HRESULT hr = S_OK;
hr = pDisp->QueryInterface(IID_IAcadApplication, (LPVOID*)&acadApp);
if (FAILED(hr))
{
acadApp->Release();
return;
}

IAcadMenuGroups *pMenuGroups = NULL;
acadApp->get_MenuGroups(&pMenuGroups);
_bstr_t myBstrWrapper("XXX.mns");
BSTR bsName = (BSTR)myBstrWrapper;
IAcadMenuGroup *pMenuGroup;
VARIANT index;
VariantInit(&index);
V_VT(&index) = VT_I4;
V_I4(&index) = 0;
pMenuGroups->Load(bsName,index,&pMenuGroup);
IAcadPopupMenus *pMenus;
pMenuGroup->get_Menus(&pMenus);
VariantInit(&index);
V_VT(&index) = VT_I4;
V_I4(&index) = 2;
pMenus->InsertMenuInMenuBar(L"XXX",index);
pMenus->Release();
pMenuGroup->Release();
pMenuGroups->Release();
acadApp->Release();
}
huangyhg离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)