使用下面的代码想实现通过keyin发送命令,选中所有元素,然后获取选中元素的EditElementHandle。
ElementAgenda selectset; SelectionSetManager::GetManager().BuildAgenda(selectset); if (!selectset.GetCount()) { return; }
但是我发现获取地元素数量是0,如果手动选择元素,获取的元素数量不是0.
请问是什么原因?
Keyin命令会排在所有函数代码执行完后才会执行。因为Keyin需要排到一个Keyin队列中,等MS有空了才会去执行。
Answer Verified By: Grant Zhang
那这种方式获取元素就行不通了?
Work smart, not just work hard!
你需要将你的获取元素的代码放到另外一个命令处理函数中,然后在构造元素的Keyin之后发出你自己的命令,从而能让指定代码在Keyin后执行。