|
我是想在鼠标左键点击时拾取打开的物体,由于对MFC和OSG的交互的内容不熟悉,所以只是想在鼠标点击时,在当前激活的视图下重绘一个带高亮的物体,表示选中:
void CZpView::OnLButtonDown(UINT nFlags, CPoint point)
{
CZpView* CView=(CZpView*)(((CMainFrame*)theApp.GetMainWnd())->GetActiveView());
....
CView->mOSG->getViewer()->setSceneData(root.get ());
CView->mOSG->getViewer()->addEventHandler( picker.get() );
CView->mOSG->getViewer()->realize();
CView::OnLButtonDown(nFlags, point);
}
运行点击鼠标后,会产生中断,然后指向CView->mOSG->getViewer()->setSceneData(root.get ());
提示访问冲突。
监视CView时,发现为0,
+ CView 0x00000000 {CZpView hWnd=???} CZpView *
请问各位,为何CView没有获取到当前激活的视图指针呢?应该怎样获取呢?望各位不吝赐教啊 |
|