EDA365电子论坛网

标题: 请教:板内已事先高亮了6个器件,这代码为什么始终为nil。 [打印本页]

作者: gogogo冲冲冲    时间: 2025-3-12 18:10
标题: 请教:板内已事先高亮了6个器件,这代码为什么始终为nil。
writehighlightsymbol = list()
foreach (symbol axlDBGetDesign()->symbols
when(axlIsHighlighted(symbol) != nil && axlDBGetDesign()->symbols->refdes != nil
writehighlightsymbol = cons (list (symbol->refdes axlIsHighlighted(symbol)) writehighlightsymbol)

println (writehighlightsymbol)


打印始终是nil
按预想我高亮了6个器件,打印这个list应该有6个元素才对

作者: db-_-    时间: 2025-3-12 19:00
axlDBGetDesign()->symbols->refdes会永远等于nil
作者: gogogo冲冲冲    时间: 2025-3-12 19:40
db-_- 发表于 2025-03-12 19:00:57
axlDBGetDesign()->symbols->refdes会永远等于nil


原来如此。这句有问题

作者: aarom    时间: 2025-3-12 20:55
提示: 作者被禁止或删除 内容自动屏蔽
作者: gogogo冲冲冲    时间: 2025-3-12 21:09
aarom 发表于 2025-03-12 20:55:41

本來看了大師 說 是 axlDBGetDesign()->symbols->refdes 改 axlDBGetDesign()->symbols~>refdes.

但我仔細看是整句 when(axlIsHighlighted(symbol) != nil && axlDBGetDesign()->symbols->refdes != nil



when(axlIsHighlighted(symbol) != nil && symbols->refdes != nil

因為

axlDBGetDesign()->symbols->refdes  是指令錯誤.

axlDBGetDesign()->symbols~>refdes 抓全部的.

symbols->refdes 是抓當下, 單一零件. 才是對的.


是的。谢谢






欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2