www.mxdraw.com
内容索引主面
前一个向上下一个
MxDrawXCustomFunction::Mx_GetCorner 方法

与用户互在图面上得到一个矩形框

IDL
static BOOL Mx_GetCorner(IN DOUBLE dX1, IN DOUBLE IN dY1, DOUBLE IN dZ1, IN LPCTSTR pszPrompt, OUT DOUBLE dX2, OUT DOUBLE OUT dY2, DOUBLE OUT dZ2);
参数 
说明 
IN DOUBLE dX1 
矩形框的左下角位置X值 
IN DOUBLE IN dY1 
矩形框的左下角位置Y值 
DOUBLE IN dZ1 
矩形框的左下角位置Z值 
IN LPCTSTR pszPrompt 
命令行提示,可以为空 
OUT DOUBLE dX2 
返回得到的点X值 
OUT DOUBLE OUT dY2 
返回得到的点Y值 
DOUBLE OUT dZ2 
返回得到的点Z值 

成功返回true.,失败返回拖放函数返回的状态,通过pRet->AtLong(1)得到。

例如: C#代码

        MxDrawUtility mxUtility = new MxDrawUtility();

        MxDrawPoint pt = (MxDrawPoint)(mxUtility.GetPoint(null,"n 输入剪切矩形框左下角点:"));

        if (pt == null)
        {
          MessageBox.Show("用户取消..");
          return;
        }

        MxDrawResbuf param = new MxDrawResbuf();
        param.AddDouble(pt.x, -10);
        param.AddDouble(pt.y, -10);

        MxDrawResbuf retParam = (MxDrawResbuf)axMxDrawX1.CallEx("Mx_GetCorner", param);

        if(retParam.AtString(0) == "Ok")
        {
            // 成功
              param2.AddDouble(retParam.AtDouble(1), -10);
              param2.AddDouble(retParam.AtDouble(2), -10);
        }

例如: VB代码

      Set mxUtility = New MxDrawXLib.MxDrawUtility

      Dim getPt As MxDrawXLib.MxDrawPoint

      Set getPt = mxUtility.GetPoint(, Chr(13) + Chr(10) + "输入矩形框左下角点:")

      If (getPt Is Nothing) Then
        Exit Sub
      End If

      Set param = New MxDrawXLib.MxDrawResbuf
      param.AddDouble getPt.x, -10
      param.AddDouble getPt.y, -10


      Set retParam = MxDrawX1.CallEx("Mx_GetCorner", param)
      If retParam.AtString(0) = "Ok" Then

            Set param2 = New MxDrawXLib.MxDrawResbuf
            param2.AddDouble retParam.AtDouble(1), -10
            param2.AddDouble retParam.AtDouble(2), -10
            param2.AddDouble getPt.x, -10
            param2.AddDouble getPt.y, -10
            param2.AddString "c:11111.dwg", -10

            MxDrawX1.CallEx "ExApp_CutDwg", param2

      End If
Copyright (c) 2010. All rights reserved.
你认为该帮助怎么样? 发送反馈信息!