乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 73|回复: 4

.GetEntity问题请教高手

[复制链接]

2

主题

3

帖子

2

银币

初来乍到

Rank: 1

铜币
11
发表于 2009-5-13 09:20:00 | 显示全部楼层 |阅读模式
Dim bpoint1 As AcadEntity
acaddoc.Utility.GetEntity(bpoint1, basepnt, vbNewLine & "拾取点")
警告 1 变量“bpoint1”在赋值前按引用传递。可能会在运行时导致 null 引用异常
新手请问怎么解决啊?
谢谢了
回复

使用道具 举报

72

主题

2726

帖子

9

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3014
发表于 2009-5-13 14:56:00 | 显示全部楼层
如果是用NetArx开发的话就不要引用Com了,2007以后的.Net Api已经增强,
使用Editor类的相关方法获取实体或选择集
回复

使用道具 举报

2

主题

3

帖子

2

银币

初来乍到

Rank: 1

铜币
11
发表于 2009-5-13 15:31:00 | 显示全部楼层
能不能给个例子,谢谢了
回复

使用道具 举报

72

主题

2726

帖子

9

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3014
发表于 2009-5-13 19:06:00 | 显示全部楼层
下面的例子把选择的直线的起点和终点显示出来
C#代码
  1.         [CommandMethod("ttt")]
  2.         public void TTT()
  3.         {
  4.             Document doc = Application.DocumentManager.MdiActiveDocument;
  5.             Editor ed = doc.Editor;
  6.             PromptEntityOptions opt = new PromptEntityOptions("\n请选择一条直线:");
  7.             opt.SetRejectMessage("\n错误的选择");
  8.             opt.AddAllowedClass(typeof(Line),true);
  9.             PromptEntityResult res = ed.GetEntity(opt);
  10.             if (res.Status == PromptStatus.OK)
  11.             {
  12.                 using (Transaction tr = doc.Database.TransactionManager.StartTransaction())
  13.                 {
  14.                     Line l = (Line) tr.GetObject(res.ObjectId, OpenMode.ForRead);
  15.                     ed.WriteMessage("\n起点:{0}\n终点:{1}", l.StartPoint, l.EndPoint);
  16.                 }
  17.             }
  18.         }
回复

使用道具 举报

29

主题

503

帖子

8

银币

中流砥柱

Rank: 25

铜币
619
发表于 2009-5-13 20:51:00 | 显示全部楼层
Dim bpoint1 As AcadEntity=nothing
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-6-28 14:15 , Processed in 1.013005 second(s), 62 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表