|
|
翻译:https://answers.flexsim.com/ques ... texist-in-2017.html0 _6 y: b$ P" d5 D: B
Flexsim中用于检验对象是否被删除的函数objectexists已经弃用,可使用if(object)来判断对象是否存在。
2 y' X. i# S9 l! p9 Y例如- J$ l- P5 }, F( }5 f( {
Object box = model().find("Queue1").first;" O% N" x, D9 x# i
if(box)# |; ~1 I2 Y8 F: r7 Z
box.color = Color.red;
# C$ N6 I8 Q# l6 r只要Queue1中还有box,则将box颜色变为红色。
, l% t2 A' h% _" L9 Q2 @$ c. F* w4 L引用标签时需要注意:两种标签引用方式object.labelname和object.labels[“labelname”]所表示的含义是不同的,前者是对标签值的引用,后者是对节点的引用。下面的代码可以很好解释这一点
% r- k2 l4 o& b4 w( e) R//myLabel = 0; E" G; ^" l! }! v. w- A1 } g
3 h' l2 s( j" q8 x2 r$ S5 G1 pif(box.labels["myLabel"]) //true8 A2 [# d# s, c- j: g
if(box.myLabel?) //false: d( t% A* T% U* g1 y
+ V( M _( a: S6 B! M
//myLabel = 1
" Y* X% H$ [/ H+ K9 O, [) u& A9 D" Q) B3 I) x; B1 d
if(box.labels["myLabel"]) //true
, V' H# G( v/ y) g% \if(box.myLabel?) //true
6 h% e) W" g8 P1 [+ F5 b4 ~6 _5 x n
//myLabel doesn't exist
( u' f! i3 e A; q N
6 K0 D7 T; o3 i5 o6 yif(box.labels["myLabel"]) //false. X' E2 u# q+ W# v# `
if(box.myLabel?) //false
# e0 R3 s! i/ D# ]5 y6 g当标签的值为0时,标签节点存在,则有if(box.labels["myLabel"])为true,if(box.myLabel?)为false。其它同理。 |
|