2017-03-26 1 views
0

MEL과 표현식을 탐색하고 이와 같은 작업을하려고합니다. 하나의 객체를 선택하면 다른 객체에서 하나의 속성을 비활성화합니다. 그러나 객체 선택 명칭에 문제가 있습니다.하나의 다른 오브젝트를 선택한 경우에만 한 오브젝트를 어떻게 변경할 수 있습니까?

If (select pCube1-r on) { 
      PCube2.visibility = 0; 
} 

내가 너무 문자열을 시도했지만 작동하지 않았다 ...

global proc myscript() { 
    string $a[] = ls -sl; 
    if ($a[0] == "pCube1") 
     hide = "pCube2"; 
    else; 
} 

scriptJob의 -e "로 myscripf" "인 selectionchanged"; 다음은 예입니다

누군가 도움을 줄 수 있습니까?

대단히 감사합니다!

답변

0

주어진 객체가 선택되었는지 알아 보려면 ls -sl에 의해 반환 된 목록을 반복해야합니다.

string $sel[] = `ls -sl`; 
string $item; 
for ($item in $sel) 
{ 
    if ($item == "your-object-here") 
    { 
     doSomething(); 
    } 
} 

이것은 당신이 확신 할 수 없기 때문에 0

+0

이 감사 항목이있을 것이다 어떤 경우에 인덱스를 사용하는 것보다 안전합니다! 나는이 길을 시험 할 것이다! !! – pdaraujo

+0

안녕하세요, 나는 그것을 시도하고 일했습니다! 고맙습니다!! 하지만 여전히 문제가 있습니다. 그냥 한 번만 작업했습니다 ... 선택을 변경할 때마다 표현식을 실행해야합니다 ... – pdaraujo

+0

string $ sel [] ='ls -sl'; \t 문자열 $ item; ($의 SEL에 $ 항목)에 대한 \t \t \t \t \t { \t \t \t 경우 ($ 항목 == "pCube1을") \t \t \t \t \t { \t \t \t pCube2.translateX = 15; \t \t \t \t \t} \t \t \t ($ 항목 == "pCube3") 경우 \t \t \t \t \t { \t \t \t pCube2.translateX = 25; \t \t \t \t} \t \t \t} – pdaraujo

관련 문제