sonny_wu 发表于 2010-6-22 20:28:00

[求助]C#+CAD2010如何实现图层的“锁定和淡入”

<p>cad2010在图层锁定的同时可以使图层变暗,我用<font face="Verdana">IsLocked</font>这个参数,只能锁定图层,不能同时实现变暗(淡入的效果),请教高手.net怎么才能实现这个效果。</p>

雪山飞狐_lzh 发表于 2010-6-23 22:18:00

<p>如果图元比较少时可以试下</p>
<p>&nbsp;</p>
<p><font face="Verdana">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; public void test()<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</font></p>
<p><font face="Verdana">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var db = HostApplicationServices.WorkingDatabase;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var doc = Application.DocumentManager.GetDocument(db);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var ed = doc.Editor;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; using (Transaction tr = db.TransactionManager.StartTransaction())<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</font></p>
<p><font face="Verdana">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var lt = db.LayerTableId.GetObject&lt;LayerTable&gt;();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var ltr = lt["1"].GetObject&lt;LayerTableRecord&gt;(OpenMode.ForWrite);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ltr.IsLocked = true;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; short llf = Convert.ToInt16( Application.GetSystemVariable("LAYLOCKFADECTL"));<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Application.SetSystemVariable("LAYLOCKFADECTL", (short)-90);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Application.SetSystemVariable("LAYLOCKFADECTL", llf);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tr.Commit();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</font></p>

sonny_wu 发表于 2010-6-24 17:02:00

<p>谢谢版主 可以实现 就是图层多了 会一闪一闪的</p>

昌边夜深了 发表于 2014-7-18 11:31:06

sonny_wu 发表于 2010-6-24 17:02 static/image/common/back.gif
谢谢版主 可以实现 就是图层多了 会一闪一闪的

关于您在“[求助]C#+CAD2010如何实现图层的“锁定和淡入””的帖子
http://bbs.mjtd.com/thread-81865-1-1.html你好,我用C#写的代码,按照您的方法可以实现锁定图层的同时有淡入的效果,但是同样是使用IsLocked这个参数解锁图层,淡入效果却没有消失,我该如何做才能在解锁的同时去掉淡入效果呢?
页: [1]
查看完整版本: [求助]C#+CAD2010如何实现图层的“锁定和淡入”