DataGrid の拡張 (2)


  オブブシェクトの相対参照



App.mxml
  
<?xml version="1.0" encoding="utf-8"?>
<mx:Application 
	xmlns:mx="http://www.adobe.com/2006/mxml"
	xmlns:my="Controls.*"
	xmlns:cur="*"
>

<mx:Panel
	title="DataGrid の拡張"
	paddingTop="10"
	paddingBottom="10"
	paddingLeft="10"
	paddingRight="10"
>

	<!-- *************************************************** -->
	<!-- 汎用型拡張 DataGrid -->
	<!-- *************************************************** -->
	<my:LboxGrid id="grid"/>

	<!-- *************************************************** -->
	<!-- 個別型拡張 ボタンセット -->
	<!-- *************************************************** -->
	<cur:App_btn/>

</mx:Panel>

</mx:Application>
  

App_btn.mxml
  
<?xml version="1.0" encoding="utf-8"?>
<mx:HBox xmlns:mx="http://www.adobe.com/2006/mxml">

	<!-- *************************************************** -->
	<!-- LboxGrid の相対参照からメソッド呼び出し -->
	<!-- *************************************************** -->
	<mx:Button label="クリア" click="Object(this.parent).getChildren()[0].Clear();"/>

	<mx:Button label="表示1" click="include 'Button1.as';"/>
	<mx:Button label="表示2" click="include 'Button2.as';"/>

</mx:HBox>
  

Button1.as
  
// 拡張コントロールの参照
import Controls.*;
// ローカル変数に、相対位置表現のオブジェクトをセット
var grid:LboxGrid = Object(this.parent).getChildren()[0];
// 拡張コントロールのメソッド
grid.AddRow(
	[
		'リテラル',
		grid.toString(),
		grid.className,
		grid.name,
		grid.id,
		grid.parent.toString()
	]
);
  

Button2.as
  
// 拡張コントロールの参照
import Controls.*;
// ローカル変数に、相対位置表現のオブジェクトをセット
var grid:LboxGrid = Object(this.parent).getChildren()[0];
// 拡張コントロールのメソッド
grid.AddRow(
	[
		this.className,
		'← this はHBox',
		// 常にアプリケーションオブジェクト
		mx.core.Application.application.className,
		// HBox の最初の子オブジェクト
		this.getChildren()[0].className,
		Object(grid.parent).className,
		grid.parentDocument.className
	]
);
  










  infoboard   管理者用   
このエントリーをはてなブックマークに追加





フリーフォントWEBサービス
SQLの窓WEBサービス

SQLの窓フリーソフト

素材

一般WEBツールリンク

SQLの窓

フリーソフト

JSライブラリ