iCAx开思工具箱

标题: CAA: 如何redraw part 文件 [打印本页]

作者: HNBoTree    时间: 2006-4-11 12:57
标题: CAA: 如何redraw part 文件
我现在要刷新part 问件,应该如何做?
我用的方法是:
              pSpec = (*pRootProducts)[1];
              CATIRedrawEvent * piRedrawEvent = NULL;
              pSpec->QueryInterface(IID_CATIRedrawEvent, (void**)&piRedrawEvent);
               if (NULL != piRedrawEvent)
              {
                 piRedrawEvent->Redraw();
                 piRedrawEvent->Release();
                 piRedrawEvent = NULL;
               }
        CATIModelEvents * piModelEvent = NULL;               
        HRESULT rc = pSpec->QueryInterface(IID_CATIModelEvents, (void**)&piModelEvent);

        if (SUCCEEDED(rc))
        {

            CATModify notif = spSpec;
            piModelEvent->Dispatch(notif);

            piModelEvent->Release();
            piModelEvent=NULL;
        }


用这种方法product 的redraw 可以满足,但是part 确纹丝不动。


后来我又取
                    pSpec = pContainer->GetPart();
作为redraw 的spec 但是仍然没有响应。
应该如何做part 的redraw 并且不对part 文件进行修改?

谢谢!

acoka  兄应该对这方面非常精通哦,请赐教。
作者: hick    时间: 2006-4-12 10:55
随便说说

pSpec = pContainer->GetPart();
然后应该是 CATModify notif = spSpec; 这个有问题
记得好像有个 CATCreate 可以看看
作者: HNBoTree    时间: 2006-4-12 11:01
谢谢,用 pSpec = pContainer->GetPart(); 可以了




欢迎光临 iCAx开思工具箱 (https://t.icax.org/) Powered by Discuz! X3.3