panel4_methods.as

来自「flash编程实例」· AS 代码 · 共 79 行

AS
79
字号
class Scene.Manage.Panels.Group1.SubPanels.Panel4_Methods extends MovieClip
{
	var DataGrid:MovieClip;//0
	var ArgsText:MovieClip;//1
	var CallButton:MovieClip;//2
	var RefreshBtn:MovieClip;//3
	//
	var onResult:Function;
	//
	function Panel4_Methods(){
		attachMovie("DataGrid", "DataGrid", 0);
		attachMovie("TextInput", "ArgsText", 1);
		attachMovie("Button", "CallButton", 2);
		attachMovie("Button", "RefreshBtn", 3);
		//
		DataGrid._x = DataGrid._y = RefreshBtn._x = 10;
		//
		RefreshBtn.label = "Refresh";
		CallButton.label = "Call";
		//
		CallButton.setSize(40, 22);
		//
		ArgsText._x = 115;
		ArgsText.text = "Arguments";
		//
		ArgsText.addEventListener("focusIn", this);
		ArgsText.addEventListener("focusOut", this);
		//
		RefreshBtn.addEventListener("click", this);
		CallButton.addEventListener("click", this);
	}
	//
	function doCall(){
		if(DataGrid.selectedItem.Method){
			var args = _global.ArgumentsParsor.GetArgumentes(ArgsText.text);
			_global.Connection.AppNet.call("appExe", null, DataGrid.selectedItem.Method, args);
		}
	}
	//
	function click(evt){
		if(evt.target == RefreshBtn){
			populateMethods();
		}else{
			doCall();
		}
	}
	function focusIn(){
		if(ArgsText.text == "Arguments"){
			ArgsText.text = "";
		}
	}
	function focusOut(){
		if(ArgsText.text == ""){
			ArgsText.text = "Arguments";
		}
	}
	//
	function activate(){
		populateMethods();
	}
	//
	function populateMethods(){
		_global.Connection.AppNet.call("getAppMethods", new getMethodsResult(this));
	}
	function getMethodsResult(p){
		this.onResult = function(result){
			p.DataGrid.dataProvider = result;
		}
	}
	//
	function setSize(w:Number, h:Number){
		DataGrid.setSize(w-20, h-50);
		//
		ArgsText._y = CallButton._y = RefreshBtn._y = h-30;
		//
		ArgsText.setSize(w-170, 22);
		CallButton._x = w-50;
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?