no13bus 发表于 2011-9-20 14:09:32

请教关于选择图元事件的问题

Autodesk.AutoCAD.EditorInput.Editor ed = Application.DocumentManager.MdiActiveDocument.Editor;
      Document acDoc = Application.DocumentManager.MdiActiveDocument;
      
      public void AddDocEvent()
      {
            acDoc.ImpliedSelectionChanged += new EventHandler(doc_ImpliedSelectionChanged);
      }

      
      public void RemoveDocEvent()
      {
            acDoc.ImpliedSelectionChanged -= new EventHandler(doc_ImpliedSelectionChanged);
      }   
      public void doc_ImpliedSelectionChanged(object sender, EventArgs e)
      {
            RemoveDocEvent();
            TypedValue value1 = new TypedValue((int)DxfCode.Start, "CIRCLE");
            TypedValue[] values = new TypedValue[] { value1 };
            SelectionFilter selefilter = new SelectionFilter(values);
            PromptSelectionResult pkfall = ed.SelectAll(selefilter);
            if (pkfall.Status == PromptStatus.OK)
            {
                ObjectId[] objectids = pkfall.Value.GetObjectIds();
                ed.SetImpliedSelection(objectids);
                AddDocEvent();
            }
      }
程序的目的是选择图中的一个图元,择选中图中所有的圆。现在的问题是能选中所有的圆了,但是按esc不能取消选择,死循环了,怎么办?其中在事件函数的开始和结尾我分别卸载事件,和加载了事件。


no13bus 发表于 2011-9-20 14:10:04

自己先顶一个,大侠们帮帮忙
页: [1]
查看完整版本: 请教关于选择图元事件的问题