自定义了一个CBmpToolBar,是基于CToolBar的,在一个类中创建一个CBmpToolBar的对象,现在
想为这个类实现一个接口,在类的外部可以通过这个接口Get到这个CBmpToolBar对象的指针,这样在其他的类中就可以使用这个CBmpToolBar对象了,这个接口应该如何实现呢?现在我是用MFC的嵌套类实现的,但是有问题,请大侠帮我看一下://嵌套类中的函数
HRESULT CMailModule::XMail::GetToolBar(BYTE* pToolBar)
{
METHOD_PROLOGUE_EX(CMailModule,Mail)
pThis->GetToolBar(pToolBar);
if(pToolBar) return S_OK;
}//类中的函数
HRESULT CMailModule::GetToolBar(BYTE* pToolBar)
{
pToolBar = (BYTE*)&(m_pMainFrame->m_wndToolBar);
return S_OK;
}IDL文件中的接口:
interface IMail : IUnknown
{
HRESULT GetToolBar([out,retval] BYTE* pToolBar);
}
请大侠指教,谢谢!
想为这个类实现一个接口,在类的外部可以通过这个接口Get到这个CBmpToolBar对象的指针,这样在其他的类中就可以使用这个CBmpToolBar对象了,这个接口应该如何实现呢?现在我是用MFC的嵌套类实现的,但是有问题,请大侠帮我看一下://嵌套类中的函数
HRESULT CMailModule::XMail::GetToolBar(BYTE* pToolBar)
{
METHOD_PROLOGUE_EX(CMailModule,Mail)
pThis->GetToolBar(pToolBar);
if(pToolBar) return S_OK;
}//类中的函数
HRESULT CMailModule::GetToolBar(BYTE* pToolBar)
{
pToolBar = (BYTE*)&(m_pMainFrame->m_wndToolBar);
return S_OK;
}IDL文件中的接口:
interface IMail : IUnknown
{
HRESULT GetToolBar([out,retval] BYTE* pToolBar);
}
请大侠指教,谢谢!
解决方案 »
- DataGrid 和 MSChart 控件的动态创建不成功
- 【请教】使用过“极品时刻表”的高手请进
- 我把几个Radio Button分在一组,怎样才能用一种简单的方法响应Radio的点击
- 怎样获取当前对话框的ID
- 如何利用别人程序中已有的对话框资源?
- VC6 写的程序在 win95 下运行不了该怎么办?
- 一个关于在CTabCtrl上使用CToolTip的问题
- 一个多串口使用过程中的问题?请大家帮忙一下
- 关于CString与0xFFFF的问题
- 200 分求源码,请问谁有 DOS 环境下开发的 MOXA 公司 Smartio(ISA) 多串口卡通讯程序,要求为中断方式。
- 初学VC,想结交几位朋友,高手可以做老师,水平跟我差不多的就是同学啦:)
- 如何在内存中只存在一个Exe类型的COM Server的实例
顺便说一下,返回指针要用**,参见queryinterface的实现
pp = (IDispatch *)CToolBar::GetInterface(&IID_IUNKOWN);在用的地方
toolbar = (CToolBar *)(CCmdTarget::FromIdispatch(pp));