|
翻译:https://answers.flexsim.com/ques ... texist-in-2017.html
5 u/ r: J" C, t+ Q0 d. zFlexsim中用于检验对象是否被删除的函数objectexists已经弃用,可使用if(object)来判断对象是否存在。
1 m3 H( \; W2 C# Z# t( @例如0 e+ {3 Z8 a6 P t# B$ `" b
Object box = model().find("Queue1").first;
; x/ L8 J; T, o/ i: {- pif(box). ^5 s+ Z B: y
box.color = Color.red;
& j6 c; X r e q7 a- ]只要Queue1中还有box,则将box颜色变为红色。
2 c( R5 V% U6 D3 ]# Y) R引用标签时需要注意:两种标签引用方式object.labelname和object.labels[“labelname”]所表示的含义是不同的,前者是对标签值的引用,后者是对节点的引用。下面的代码可以很好解释这一点4 ^" @2 f n7 `( Z$ P$ ~
//myLabel = 0
) w' v8 |' p3 ~ k( Q- N5 K
$ U& y) z M9 a: O# r( dif(box.labels["myLabel"]) //true
6 W! j& b+ C# A% v6 m8 hif(box.myLabel?) //false; d' f' U1 b- n7 [
. _ Z7 i0 s, _0 }# ?3 `9 i! K' @, o//myLabel = 1
& u8 j, Q9 T! e: d' f/ W9 w, Z# w7 l, F, x- |1 y/ k
if(box.labels["myLabel"]) //true
+ Y- g4 z! |$ Zif(box.myLabel?) //true
4 x8 R5 ^0 o n; N X/ Q& u: P. R- P" M" t/ |2 h. H* \" x* j
//myLabel doesn't exist
8 w6 M. H" i2 S1 o' f2 G, F: n9 O
if(box.labels["myLabel"]) //false
' j# s$ x+ R5 V1 O* g9 c6 [) {if(box.myLabel?) //false' x' H8 W, u H) d b) ~3 H
当标签的值为0时,标签节点存在,则有if(box.labels["myLabel"])为true,if(box.myLabel?)为false。其它同理。 |
|