|
翻译:https://answers.flexsim.com/ques ... texist-in-2017.html
+ h1 D1 j5 n0 BFlexsim中用于检验对象是否被删除的函数objectexists已经弃用,可使用if(object)来判断对象是否存在。
1 Q: V& Z5 S& B. H! w例如
% E+ X% p: v, n. p B% y2 GObject box = model().find("Queue1").first;
/ C% _" E: ~1 i7 K/ B! U7 y- kif(box)
( j- A* }1 w- e o box.color = Color.red;0 N% b7 l+ `4 C& A: S$ M. A0 N
只要Queue1中还有box,则将box颜色变为红色。* k/ u$ X9 v' [- V" e" }" R
引用标签时需要注意:两种标签引用方式object.labelname和object.labels[“labelname”]所表示的含义是不同的,前者是对标签值的引用,后者是对节点的引用。下面的代码可以很好解释这一点
1 ^3 i" K, ]6 a& y, l+ d+ w$ A//myLabel = 02 t. \) D+ P6 u6 _
7 ~9 c5 u w0 I1 O: r! M, ^
if(box.labels["myLabel"]) //true
; ~& ~9 N5 w+ c* h$ Mif(box.myLabel?) //false- v i- \) R8 U w& @: N
9 Y5 U; Y' b* f3 Q//myLabel = 1* h( P4 z0 n3 S+ S) P
/ X2 f H' a9 X- ?
if(box.labels["myLabel"]) //true
& k# G' \4 R4 c/ J7 zif(box.myLabel?) //true+ E; s; j& }& e! `* ?1 @
) j9 z1 K# X( s" `/ B//myLabel doesn't exist
y, O7 D# H2 F
' f s* L4 g! x5 \" I2 x2 xif(box.labels["myLabel"]) //false
: ]7 c Z* [( I3 s* y2 Fif(box.myLabel?) //false5 q+ @# H4 w1 ^3 e6 C
当标签的值为0时,标签节点存在,则有if(box.labels["myLabel"])为true,if(box.myLabel?)为false。其它同理。 |
|