xinxirong 发表于 2016-3-11 09:38:59

在beginSSGet处修改关键字和选择模式

AcEdInputContextReactor::beginSSGet




virtual void beginSSGet(    const ACHAR* pPrompt,   int initGetFlags,   const ACHAR* pKeywords,   const ACHAR* pSSControls,   const AcArray<AcGePoint3d>& points,   const resbuf* entMask);
有两个难题:

1.是如何突破const限制,把&pSSControls指向我的“选择模式"字符串地址

2.AcEdInputContextReactor是针对一个文档,需要每个文档都要addInputContextReactor,新建的文档也要addInputContextReactor,比较麻烦,当然也能实现;有没有一个针对全局的reactor?


目前研究出现的是:

Lisp命令(ssget)顺序是先acedSSGet,再到beginSSget
而erase是只进入beginSSget,并不调用 acedSSGet,所以只能在beginSSGet上下手。




页: [1]
查看完整版本: 在beginSSGet处修改关键字和选择模式