|
本帖最后由 bigmomasd 于 2024-12-17 20:51 编辑
' i: U8 `# n% V' b2 _% c( N% e; p2 E$ w6 q' C1 T( j
在tcl command界面输入- # 此脚本重构tooltip功能,使得鼠标悬停在器件上面的时候显示器件的封装信息
' G. Y) U# ]$ P6 r - # 判断是否启用工具提示功能
9 P3 G. }7 z6 l) h% v8 q: ]: e - proc CustomToolTipForPageObjectsEnabler {args} {
# t2 J+ T' d2 J/ k4 P - return true
$ G! g8 o# e5 {# G& a - }
2 d+ T3 P2 K% p- i0 H
5 @* v8 l+ Q. T- Q9 `+ i" x" Q4 g% J- $ i5 S- W9 C' j j
- # 获取器件的 PCB Footprint 属性值- C4 N/ J E; t2 {* s8 k# X
- proc GetCustomToolTipForPageObjects {pObj pSchOcc pName} {0 n( ^6 X% s5 R8 O5 ]+ k
- # 定义属性名
3 v9 n- B" D& G8 M! c4 j - set propName [DboTclHelper_sMakeCString "PCB Footprint"]5 w% b6 d9 A8 J+ P9 H! }# u
- set propValue [DboTclHelper_sMakeCString]
' Z/ I" r3 i( c: ~ - & S7 _' l6 z w$ _' |9 x2 Y
- # 获取属性值6 F# \/ O8 k5 F' x" q2 @
- set status [$pObj GetEffectivePropStringValue $propName $propValue]) N5 E( h) q p. z( k/ [0 O q9 v( Z
) V p* |# f8 f- U% Z7 S7 N* t- if {[$status OK]} {
" g; J( u: T' v1 K! s& |# p2 _ - return "${pName} --- [DboTclHelper_sGetConstCharPtr $propValue]"! N6 V5 k: t' c9 O1 g( e
- } else {
: D0 h& j5 y7 t( S% X - return "${pName}"
& B; z$ z' @% h2 U+ S' v% ?5 t - }! t5 u% X' _* O0 _& D; |/ T9 x
- }' W% P9 M" e) B* ^" y
/ e/ u3 S+ I" ?; @6 }8 B, b- # 调用 RegisterAction 并设置参数
+ c9 }4 M$ I7 p7 L" Y! R# A - RegisterAction _cdnGetCustomToolTipForPageObjects \5 q v# @1 c& [ t
- CustomToolTipForPageObjectsEnabler \
# F8 b# E: R( P' ?% J/ M9 [ - "" \
* Y3 b& M* _5 U- e/ g - GetCustomToolTipForPageObjects \8 d, O0 d% ]8 }
- schematic_page
复制代码 然后鼠标移动到器件上方,显示如下:8 g( s9 n3 u% y- V; [; x
便可以成功显示器件的封装信息。
" R! Q0 w( B7 p7 h) D
$ r! M7 m$ R4 B3 w, a如果要每次打开cadence就加载此功能,可以将上述代码保存至一个tcl文件中,如show_pcb_footprint_tooltip.tcl文件,然后保存到<Cadence_Installation>\tools\capture\tclscripts\capAutoLoad目录下,重新打开cadence即可。
' O& L- |3 d, Z7 X4 r' _5 L
! H, n8 H9 ~8 V( c4 }% W T |
|