2016-07-18 7 views
0

別のオプションボックスで選択したオプションに基づいてmenuItemを更新しようとしています。私が実際にやりたいことは、オプションボックス(例:プロジェクトフォルダ名)にフォルダの一覧を表示し、オプションボックスで特定のフォルダ(プロジェクト)を選択すると、そのフォルダ内のフォルダが別のオプションボックス例:アニメーション、モデリングなどの部門フォルダ名)MELスクリプトでmenuItemを動的に更新する方法

global proc GetProject_Root() { 

    string $projectname ; 
    string $dataArray[] ; 
    string $tempArray[] ; 
    string $project ; 
    $i ; 
    string $disp ; 
    string $m1 ; 
    string $m2 ; 

    $serverSaveDir = (`internalVar -userPrefDir` + "ProjectRoot.txt") ; 
    $serverId = `fopen $serverSaveDir "r"` ; 
    int $num = 0 ; 

    string $serverLine = `fgetword $serverId` ; 

    while (size($serverLine) > 0) { 

     $dataArray[ size($dataArray) ] = $serverLine ; 
     print ($serverLine) ; 

     if ($num % 2 == 0) { 

      $tempArray[size($tempArray)] = $serverLine ; 
     } 

     // get the next line 
     $serverLine = `fgetword $serverId` ; 
     $num++ ; 
    } 

    fclose $serverId ; 

    string $window = `window` ; 
    columnLayout ;  
    optionMenu -label "project" -cc "print #1**strong text**" proj ; 

     for ($projectname in $tempArray) { 

      // print ($projectname + "\n") ; 

      $m1 = `menuItem -label $projectname` ;    
     } 

    optionMenu -label "Episode" -cc "print #1" epi ; 

     for ($projectname in $tempArray) { 

      // print ($projectname + "\n") ; 

      $m2 = `menuItem -label $projectname` ; 
     }      

    showWindow $window ; 
} 

答えて

0

最初のものが変更されたときにそのコントロールを再作成する必要があります。したがって、プロジェクトフォルダを選択すると、他のoptionMenuコントロールを削除して再作成します。アイテムを編集する場所が離れているように見えません

関連する問題