[MSCE C#]如何获取顶部菜单和工具栏的高度?

Parents Reply
  • 搞定,结贴,谢谢二位大佬!

    C++端:

    extern "C" __declspec(dllexport) void __stdcall worldPointToGlobalScreenPoint(int viewNumber, DPoint3d worldPoint, Point2d* globalScreenPoint) {
        MSDialogP viewWindow = mdlWindow_viewWindowGet(viewNumber);

        DPoint3d viewPoint;
        DPoint3d screenPoint;
        viewWindow->GetViewport()->ActiveToView(&viewPoint, &worldPoint, 1);
        viewWindow->GetViewport()->ViewToScreen(&screenPoint, &viewPoint, 1);
        Point2d pointInMdl{ (int)screenPoint.x, (int)screenPoint.y };

        if (mdlWindow_isGlobalPointConversionRequired(viewWindow->GetScreenNumber())) {
            mdlWindow_globalPointConversionIncrease(globalScreenPoint, viewWindow, &pointInMdl);
        }
    }

    C#端:

    [DllImport("MstnLib.dll")]
    public static extern void worldPointToGlobalScreenPoint(int viewNumber, Bentley.GeometryNET.DPoint3d worldPoint, ref Bentley.GeometryNET.Point2d globalScreenPoint);

    Answer Verified By: lingwei liu 

Children