|
翻译:https://answers.flexsim.com/ques ... texist-in-2017.html! S* s+ z. z S
Flexsim中用于检验对象是否被删除的函数objectexists已经弃用,可使用if(object)来判断对象是否存在。9 O: k3 z" [6 {, v/ V
例如' [& p$ F, @! u$ O2 k" U
Object box = model().find("Queue1").first;: v# g6 y v# A4 S' W- R
if(box)
3 u/ I! ?' }8 }' j4 d9 h box.color = Color.red;
/ k& t9 K M" B/ c3 Q- T, O: y# g, ^) R只要Queue1中还有box,则将box颜色变为红色。! ]: H8 f( T* w6 a5 W! ^. Z
引用标签时需要注意:两种标签引用方式object.labelname和object.labels[“labelname”]所表示的含义是不同的,前者是对标签值的引用,后者是对节点的引用。下面的代码可以很好解释这一点
, |0 @: R3 x& H& G& ]+ D& v//myLabel = 0
% k+ R: H, ~! s: t! y6 A0 j
' H, R2 t. [5 a9 k4 G( hif(box.labels["myLabel"]) //true
6 ~& e/ P& y; M% U7 iif(box.myLabel?) //false
* C0 p2 l3 C7 w7 Y
. e3 F% J% R; @//myLabel = 1( _2 u9 w/ K# v& c& j: Q1 v
. m' S& c" S) C5 }! ]% @if(box.labels["myLabel"]) //true, b9 y, ?" o8 ]6 r' x6 Y$ w
if(box.myLabel?) //true
2 `1 w$ K5 [/ f( x7 j$ I# v7 D8 w% K$ r+ b
//myLabel doesn't exist/ Y6 w- R+ y, I) H. ^* X# B
. }' \9 s, J- P) W0 e7 f* t$ V! W8 N+ l
if(box.labels["myLabel"]) //false/ i. K& j) N ^7 p) ~& c/ Y; w, }
if(box.myLabel?) //false$ {' U) a* u3 T# @! b
当标签的值为0时,标签节点存在,则有if(box.labels["myLabel"])为true,if(box.myLabel?)为false。其它同理。 |
|