ブラウザでダウンロード 拡張子:txtvbswsfjsphpjavahtmlutf8sjis <?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:my="winofsql.Controls.*" initialize="initData();" > <mx:Style source="Style.css" /> <mx:Style> LboxGrid { color: black; } </mx:Style> <mx:Script> <![CDATA[ import mx.controls.*; import mx.events.*; import mx.formatters.*; import flash.external.*; // ********************************************************* // アプリケーションの初期化 // ********************************************************* public function initData():void { // パラメータをプロパティとして持つ Object を取得 var param:Object = mx.core.Application.application.parameters; // LboxGrid 初期化 grid.Reset(); // ヘッダタイトルを表示 grid.ShowHeader(); // 高さを設定 grid.width = 500; grid.height = 350; // 列を追加 grid.AddColumn("KEY"); grid.AddColumn("VALUE"); // LboxGrid に全てセット var i:int = 0; for (var key:* in param) { grid.AddRow( key, param[key] ); } // 行を選択しない grid.Unselect(); // 右クリックメニュー var cMenu:ContextMenu = new ContextMenu(); // 必要最低限の adobe メニューのみ表示 cMenu.hideBuiltInItems(); var cMenuItem:ContextMenuItem = new ContextMenuItem("SQLの窓"); cMenuItem.addEventListener( ContextMenuEvent.MENU_ITEM_SELECT, function (event:ContextMenuEvent):void { var req:URLRequest = new URLRequest( "http://winofsql.jp/" ); navigateToURL(req, "_blank"); } ); cMenu.customItems.push(cMenuItem); this.contextMenu = cMenu; } // ********************************************************* // ログ表示 // ********************************************************* public function firebug(data:Object):void { var fmt:DateFormatter = new DateFormatter(); fmt.formatString = "YYYY/MM/DD HH:NN:SS"; var logdt:String = fmt.format( new Date ); ExternalInterface.call( "console.log", logdt, data+"" ); } ]]> </mx:Script> <mx:Panel horizontalAlign="center" paddingLeft="10" paddingRight="10" > <my:LboxGrid id="grid"/> </mx:Panel> </mx:Application> LboxGrid.mxml 拡張子:txtvbswsfjsphpjavahtmlutf8sjis <?xml version="1.0" encoding="utf-8"?> <mx:DataGrid height="400" xmlns:mx="http://www.adobe.com/2006/mxml"> <mx:Script source="M_AddRow.as"/> <mx:Script source="M_Clear.as"/> <mx:Script source="M_Column.as"/> <mx:Script source="M_Prop.as"/> </mx:DataGrid> M_AddRow.as 拡張子:txtvbswsfjsphpjavahtmlutf8sjis // 初回( 行が存在しない )フラグ private var init_flg:int = 1; // カレント行( -1 は先頭行の前 ) private var cur_row:int = -1; import mx.controls.*; import mx.controls.dataGridClasses.DataGridColumn; import mx.collections.*; // ************************************************* // 配列を Object のプロパティにセット // ************************************************* public function SetArrayToObject(obj:Object,arr:Array):void { if ( arr == null ) { arr = []; } // 配列の数 var arrayMax:int = arr.length; // 列の数( M_Prop.as で定義 ) var colMax:int = this.count; // obj( 行データ ) の プロパティに値をセット var i:int; for( i = 1; i <= colMax; i++ ) { if ( i > arrayMax ) { obj["COL" + i] = ""; } else { obj["COL" + i] = arr[i-1]; } } } // ************************************************* // 行追加 // 引数は配列 // ************************************************* public function AddRow(... cols):void { this.AddRowArray(cols) } public function AddRowArray(cols:Array=null):void { // 初回処理 if ( this.init_flg == 1 ) { this.init_flg = 0; // dataProvider に実体をセット this.dataProvider = new ArrayCollection(); // 先頭行を選択状態にする this.selectedIndex = 0; } // 行データをセットする Object を作成 var obj:Object = new Object(); // 配列を Object のプロパティにセット SetArrayToObject( obj, cols ); // obj( 行データ )を追加 this.dataProvider.addItem(obj); // 現在行の設定 this.cur_row++; } // ************************************************* // 行挿入 // 引数は配列 // ************************************************* public function InsertRow(idx:int,... cols):void { this.InsertRowArray(cols,idx) } public function InsertRowArray(cols:Array=null,idx:int=0):void { // 初回処理 if ( this.init_flg == 1 ) { this.init_flg = 0; // dataProvider に実体をセット this.dataProvider = new ArrayCollection(); // 先頭行を選択状態にする this.selectedIndex = 0; } // 行データをセットする カーソル を作成 var ivc:IViewCursor = this.dataProvider.createCursor(); // 行データをセットする Object を作成 var obj:Object = new Object(); // 配列を Object のプロパティにセット SetArrayToObject( obj, cols ); // obj( 行データ )を追加 ivc.seek(CursorBookmark.FIRST,idx); ivc.insert(obj); // 現在行の設定 this.cur_row++; }
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:my="winofsql.Controls.*" initialize="initData();" > <mx:Style source="Style.css" /> <mx:Style> LboxGrid { color: black; } </mx:Style> <mx:Script> <![CDATA[ import mx.controls.*; import mx.events.*; import mx.formatters.*; import flash.external.*; // ********************************************************* // アプリケーションの初期化 // ********************************************************* public function initData():void { // パラメータをプロパティとして持つ Object を取得 var param:Object = mx.core.Application.application.parameters; // LboxGrid 初期化 grid.Reset(); // ヘッダタイトルを表示 grid.ShowHeader(); // 高さを設定 grid.width = 500; grid.height = 350; // 列を追加 grid.AddColumn("KEY"); grid.AddColumn("VALUE"); // LboxGrid に全てセット var i:int = 0; for (var key:* in param) { grid.AddRow( key, param[key] ); } // 行を選択しない grid.Unselect(); // 右クリックメニュー var cMenu:ContextMenu = new ContextMenu(); // 必要最低限の adobe メニューのみ表示 cMenu.hideBuiltInItems(); var cMenuItem:ContextMenuItem = new ContextMenuItem("SQLの窓"); cMenuItem.addEventListener( ContextMenuEvent.MENU_ITEM_SELECT, function (event:ContextMenuEvent):void { var req:URLRequest = new URLRequest( "http://winofsql.jp/" ); navigateToURL(req, "_blank"); } ); cMenu.customItems.push(cMenuItem); this.contextMenu = cMenu; } // ********************************************************* // ログ表示 // ********************************************************* public function firebug(data:Object):void { var fmt:DateFormatter = new DateFormatter(); fmt.formatString = "YYYY/MM/DD HH:NN:SS"; var logdt:String = fmt.format( new Date ); ExternalInterface.call( "console.log", logdt, data+"" ); } ]]> </mx:Script> <mx:Panel horizontalAlign="center" paddingLeft="10" paddingRight="10" > <my:LboxGrid id="grid"/> </mx:Panel> </mx:Application>
<?xml version="1.0" encoding="utf-8"?> <mx:DataGrid height="400" xmlns:mx="http://www.adobe.com/2006/mxml"> <mx:Script source="M_AddRow.as"/> <mx:Script source="M_Clear.as"/> <mx:Script source="M_Column.as"/> <mx:Script source="M_Prop.as"/> </mx:DataGrid>
// 初回( 行が存在しない )フラグ private var init_flg:int = 1; // カレント行( -1 は先頭行の前 ) private var cur_row:int = -1; import mx.controls.*; import mx.controls.dataGridClasses.DataGridColumn; import mx.collections.*; // ************************************************* // 配列を Object のプロパティにセット // ************************************************* public function SetArrayToObject(obj:Object,arr:Array):void { if ( arr == null ) { arr = []; } // 配列の数 var arrayMax:int = arr.length; // 列の数( M_Prop.as で定義 ) var colMax:int = this.count; // obj( 行データ ) の プロパティに値をセット var i:int; for( i = 1; i <= colMax; i++ ) { if ( i > arrayMax ) { obj["COL" + i] = ""; } else { obj["COL" + i] = arr[i-1]; } } } // ************************************************* // 行追加 // 引数は配列 // ************************************************* public function AddRow(... cols):void { this.AddRowArray(cols) } public function AddRowArray(cols:Array=null):void { // 初回処理 if ( this.init_flg == 1 ) { this.init_flg = 0; // dataProvider に実体をセット this.dataProvider = new ArrayCollection(); // 先頭行を選択状態にする this.selectedIndex = 0; } // 行データをセットする Object を作成 var obj:Object = new Object(); // 配列を Object のプロパティにセット SetArrayToObject( obj, cols ); // obj( 行データ )を追加 this.dataProvider.addItem(obj); // 現在行の設定 this.cur_row++; } // ************************************************* // 行挿入 // 引数は配列 // ************************************************* public function InsertRow(idx:int,... cols):void { this.InsertRowArray(cols,idx) } public function InsertRowArray(cols:Array=null,idx:int=0):void { // 初回処理 if ( this.init_flg == 1 ) { this.init_flg = 0; // dataProvider に実体をセット this.dataProvider = new ArrayCollection(); // 先頭行を選択状態にする this.selectedIndex = 0; } // 行データをセットする カーソル を作成 var ivc:IViewCursor = this.dataProvider.createCursor(); // 行データをセットする Object を作成 var obj:Object = new Object(); // 配列を Object のプロパティにセット SetArrayToObject( obj, cols ); // obj( 行データ )を追加 ivc.seek(CursorBookmark.FIRST,idx); ivc.insert(obj); // 現在行の設定 this.cur_row++; }