![]() |
【转帖】动态显示实体的扩展数据 - 精华帖集合
动态显示实体的扩展数据 - 精华帖集合
www.dimcax.com 动态显示实体的扩展数据 , 当鼠标移动到一个实体上时,会动态显示这个实体的扩展数据。程序中用到最新的dotnetarx5.0。public class class1 { editor ed = tools.editor; database db = hostapplicationservices.workingdatabase; string appname = "test_application"; string xdatas; [commandmethod("displaytext")] public void displaytext() { ed.rollover +=new rollovereventhandler(ed_rollover); ed.pointfilter += new pointfiltereventhandler(ed_pointfilter); } void ed_pointfilter(object sender, pointfiltereventargs e) { e.result.tooltiptext = xdatas; } void ed_rollover(object sender, rollovereventargs e) { xdatas=null; using (transaction trans=db.transactionmanager.starttransaction()) { objectid[] ids=e.highlighted.getobjectids(); if (ids.getlength(0)>0) { resultbuffer xdataout = ids[0].getxdata(appname); if (xdataout == null) { return; } foreach (typedvalue xdata in xdataout) { xdatas+=string.format("\ntypecode={0},value={1}", xdata.typecode, xdata.value); } } } } } 才鸟老大 我对你得敬仰有如滔滔江水,绝不了拉. 解决我们困难户得问题呢.jiu 路漫漫其修远兮,吾将上下而求索! ed.rollover +=new rollovereventhandler(ed_rollover); cad2007没有啊 路漫漫其修远兮,吾将上下而求索! 了,已经实现。 有点疑问! ed.rollover +=new rollovereventhandler(ed_rollover); 也无颜色提示 void ed_rollover(object sender, rollovereventargs e)中rollovereventargs 提示:找不到类型或命名空间名称“rollovereventargs”(是否缺少 using 指令或程序集引用?) 请问怎么解决??? 是不是一定要用cad2009 [ ] 原帖由 flymarchday 于 2008-2-28 04:34 pm 发表 ed.rollover +=new rollovereventhandler(ed_rollover); 也无颜色提示 void ed_rollover(object sender, rollovereventargs e)中rollovereventargs 提示:找不到类型或命名空间名称“rollovereventargs”(是否缺少 ... 必须08以上版本 c#最适合开发autocad,因为它拥有vb容易的特点,却具有vc++的强大功能。 动态显示实体的扩展数据,十字光标会不停的闪烁?,能不能让它不再闪烁? 效果非常差,能不能有其他创新的方法? 我想实现:(当鼠标移到某个块上面的时候,弹出一个小提示窗口,在提示窗口中显示部分主要的扩展数据,当鼠标离开块时,提示窗口自动关闭。)我用上面的方法泡制了一下,效果非常差。老大能否给个其他建议或帮助。 在cad2009中与cad自己的动态提示有冲突。 不错这样我就可以不用单独的去取 扩展数据了 |
所有的时间均为北京时间。 现在的时间是 09:31 PM. |