|
|
翻译:https://answers.flexsim.com/ques ... texist-in-2017.html
3 h) S8 h+ x. d, OFlexsim中用于检验对象是否被删除的函数objectexists已经弃用,可使用if(object)来判断对象是否存在。7 R$ N1 U" H2 Q, b2 R
例如
) w$ a9 x7 ^$ X& y& d& ^Object box = model().find("Queue1").first;. C8 y! C4 z$ k5 N$ w4 o8 k
if(box)( d, s9 i3 }! c2 E d! \
box.color = Color.red;
. t/ {1 c5 E- r0 E8 n- z& `只要Queue1中还有box,则将box颜色变为红色。; I0 ]2 y) ?( q F ~- J; P
引用标签时需要注意:两种标签引用方式object.labelname和object.labels[“labelname”]所表示的含义是不同的,前者是对标签值的引用,后者是对节点的引用。下面的代码可以很好解释这一点
1 M7 M. r, f$ f, B- U# V) p//myLabel = 0: G6 g+ l( M1 X& ~/ X
" J# V4 e' M9 v$ W7 [1 `+ J
if(box.labels["myLabel"]) //true7 n; m' H+ h- i' G3 o5 Q6 X
if(box.myLabel?) //false2 l1 u, N& {1 f8 ? _3 C6 }
6 _" [- Y* p0 n9 a
//myLabel = 1
5 D! |1 _+ z+ q8 {, e
/ @8 R1 t! e. M3 C! aif(box.labels["myLabel"]) //true; x7 x( m3 }9 k0 O( O% r1 J5 v% \. \+ Q
if(box.myLabel?) //true
5 ?8 r8 K( s, x1 d* M- v! f6 \
) }5 I4 z) {+ Z, w1 {6 V- Q: ]//myLabel doesn't exist+ D$ R% ]. Z/ |3 t' W0 I; v! {
' ~3 b- m: ]3 p9 ^
if(box.labels["myLabel"]) //false
) f3 R$ j0 f- G9 N/ T8 l5 ~; qif(box.myLabel?) //false
/ I" x( |* y; Y, g5 f当标签的值为0时,标签节点存在,则有if(box.labels["myLabel"])为true,if(box.myLabel?)为false。其它同理。 |
|