EaBIM

标题: [资料] delphi.net二次开发AutoCAD(三)提示用户输入 [打印本页]

作者: 萧闫子    时间: 2014-1-8 14:24
标题: [资料] delphi.net二次开发AutoCAD(三)提示用户输入
 Editor 对象是 Document 对象的子对象,定义了用户输入方法。用户输入方法在 AutoCAD 命令行中或动态输入工具提示中显示一个提示信息,并且要求输入各种不同类型的值。这种用户输入对于交互式输入屏幕坐标、图元选择、短字符串或数值非常有用。如果应用程序要求输入多个选项或值,则使用 Windows 窗体可能比使用单个提示更合适。  

  每个用户输入方法都在 AutoCAD 命令行显示提示,并返回特定于所请求的输入类型的值。例如,GetString 返回一个 PromptResult,它允许用户判断 GetString 方法的状态并获得用户输入的字符串。每一个用户输入方法都有一个指定的返回值。

  输入方法接受一个用于显示提示的字符串或控制用户输入的指定对象类型。这些对象类型让用户可以控制一些输入,像输入 NULL(按回车),基点,输入零或负数,任意文本值的输入。

  要使提示单独显示在一行中,在VB.NET中使用可以在提示字符串的开头使用回车符/换行常量字符 (vbCrLf),而在 C# 中使用 “\n” 字符串。

  GetString 方法提示用户在 AutoCAD 命令提示下输入字符串。该方法接收两个参数。PromptStringOptions 对象允许控制用户输入以及怎样显示提示信息。PromptStringOptions 对象的 AllowSpaces 属性控制是否允许输入空格。如果为 False ,按空格键将中止用户输入。
下面例子显示了“输入名称”提示,并要求用户通过按 ENTER 键来终止输入(输入字符串中可以包含空格)。输入字符串值将通过一个消息框显示出来。


  1. namespace ClassLibrary3;

  2. interface
  3. uses
  4.   Autodesk.AutoCAD.Runtime, Autodesk.AutoCAD.ApplicationServices,Autodesk.AutoCAD.EditorInput;

  5. type
  6.   Class1 =public  class
  7.   private
  8.   public
  9.     [CommandMethod('MyName')]
  10.     class method MyName;
  11.   end;

  12. implementation
  13. class method Class1.MyName;
  14. var
  15. acDococument;
  16. pStrOptsromptStringOptions;
  17. pStrResromptResult;
  18. begin
  19.   acDoc:=Application.DocumentManager.MdiActiveDocument;  
  20.   pStrOpts:=New PromptStringOptions(#13+'请输入名称: ');
  21.   pStrOpts.AllowSpaces:=True;
  22.   pStrRes:= acDoc.Editor.GetString(pStrOpts);  
  23.   Application.ShowAlertDialog('你输入的名称是:'+pStrRes.StringResult);
  24. end;

  25. end.
复制代码





欢迎光临 EaBIM (https://eabim.net/) Powered by Discuz! X3.2