明经通道 AutoLISP 函数  
dictnext
 

查找词典中的下一个条目

(dictnext ename [rewind])

参数

ename

词典名称。

rewind

如果参数存在且不为 nil,则词典将被回绕,该函数将检索词典中的第一个条目。

返回值

指定词典中的下一个条目。如果已经到达词典的结尾,则返回 nil。条目以 DXF 类型代码和值的点对的形式返回。不返回已删除的词典条目。

dictsearch 函数指定检索的初始条目。

使用 namedobjdict 获得关于主词典图元名称。

注意 一旦开始逐条检索词典的内容,在这一过程中向 dictnext 传递其他的词典名就会导致原始词典的位置丢失。换言之,该函数仅维护一个全局枚举器。

示例

先按照 dictadd 样例所示创建词典和条目,然后创建另一个 Xrecord 对象:

命令: (setq xname (entmakex datalist))

<图元名: 1b62d60>

将这个 Xrecord 对象作为词典中的第二个记录添加到词典:

命令: (dictadd newdict "DATA_RECORD_2" xname)

<图元名: 1b62d60>

返回词典中下一条目的图元名:

命令: (cdr (car (dictnext newdict)))

<图元名: 1bac958>

dictnext 返回添加到词典的第一个图元的名称。

返回词典中下一条目的图元名:

命令: (cdr (car (dictnext newdict)))

<图元名: 1bac960>

dictnext 返回添加到词典的第二个图元的名称。

返回词典中下一条目的图元名:

命令: (cdr (car (dictnext newdict)))

nil

词典中没有更多的条目,所以 dictnext 返回 nil。

返回词典的第一个条目并返回该条目的图元名:

命令: (cdr (car (dictnext newdict T)))

<图元名: 1bac958>

指定 T 为可选参数 rewind 的值,将导致 dictnext 返回词典中的第一个条目。

参阅

dictadddictremovedictrenamedictsearchnamedobjdict 函数。

明经通道 版权所有 未经许可 不得传播

 评论