全局变量和局部变量

 
 
 

全局变量的使用示例

以下是一些使用全局变量的代码示例。

示例 1

以下代码在 myProcedure 程序中使用 $globalText 全局变量。globalText 全局变量已在程序的外部定义:

global string $globalText;
global proc myProcedure()
{
global string $globalText;
print($globalText);
} 

示例 2

在该示例中,MEL 将生成一个可用来创建更多子窗口的窗口。$chosenOne 全局变量将跟踪用户选择的子窗口。在每个新创建的子窗口内,均有一个 chooseMe 按钮。单击该按钮,可以将该特定窗口设定为 $chosenOne。在主、父对象窗口中单击“删除选择的窗口”时,将删除 $chosenOne。

在以下图像中,window4 是 $chosenOne,它将在您单击“删除选择的窗口”时删除。

代码如下所示:

global proc int pressMe(string $thisOne) { 
	global string $chosenOne;
	print ("was " + $chosenOne + "\n");
	$chosenOne = $thisOne;
	print ("nowIs " + $chosenOne + "\n");
	return 1; 
} ;
global proc int satWindow(){
             string $temp = `window -width 150`;
             button -label "Choose Me" -command ("pressMe " + $temp);
             showWindow;
             return 1;
}
global proc int baseWindow() { 
	global string $chosenOne;
	
	window -width 150;
	columnLayout -adjustableColumn true;
	button -label "Make another Window" -command "satWindow";
	button -label "Delete Chosen Window" -command "deleteUI -window $chosenOne";
	
	showWindow;
	return 1; 
} 
baseWindow()