修改polyline的颜色autoCAD崩了,求问原因
public void GetPolyline()
{
Document acDoc = Application.DocumentManager.MdiActiveDocument;
Editor acEd = acDoc.Editor;
// 提示用户选择一条Polyline
PromptEntityOptions peo = new PromptEntityOptions("\n请选择一条Polyline");
peo.SetRejectMessage("\n所选对象不是Polyline,请重新选择");
peo.AddAllowedClass(typeof(Polyline), true);
PromptEntityResult per = acEd.GetEntity(peo);
if (per.Status == PromptStatus.OK)
{
using (Transaction acTrans = acDoc.TransactionManager.StartTransaction())
{
// 打开并锁定选中的Polyline
Polyline acPoly = acTrans.GetObject(per.ObjectId, OpenMode.ForRead) as Polyline;
if (acPoly != null)
{
// 将选中的Polyline赋值给polyEnt变量
Polyline polyEnt = acPoly;
//// 改变Polyline的颜色为红色
acPoly.Color = Color.FromColorIndex(ColorMethod.ByColor, 1);
// 更新图形和刷新显示
acEd.UpdateScreen();
// 在控制台输出选中的Polyline的长度
acEd.WriteMessage("\n已选择的Polyline长度:{0}", polyEnt.Length);
}
acTrans.Commit();
}
}
}
以上代码是在autoCAD2016 vs.net2017下的项目测试 红色代码删除就可以运行,不删除autoCAD就会崩了 出现如下图
http://bbs.mjtd.com/forum.php?mod=image&aid=130005&size=300x300&key=bae923bdb2e0aa86&nocache=yes&type=fixnone
这是什么原因,我哪个环节出问题了,不能直接修改颜色吗?
要怎么改?求指导一下
晕倒,忘记ForWrite了 给你一个眼神你自己体会 谜底就在迷面上是吧
页:
[1]