본문 바로가기

Developer/Action Script 3.0

dataGrid 안에 checkBox


import fl.controls.dataGridClasses.DataGridColumn;
import fl.data.DataProvider;
import fl.events.ListEvent;
import fl.controls.Button;

 

 

var colChecked:DataGridColumn = _rootMain.accountList.columns[0];    
colChecked.cellRenderer = CheckCellClass;

(그리드 컨트롤의 컬럼을 DataGridColumn 으로 인식시킨후

cellRenderer 로 클래스 통째로 적용.

 

CheckCellClass class

 

package

{
    import fl.controls.CheckBox;
    import fl.controls.listClasses.ICellRenderer;
    import fl.controls.listClasses.ListData;
    import flash.events.Event;
    import fl.events.ListEvent;
    import fl.core.InvalidationType;
    import flash.events.MouseEvent;
   
    public class CheckCellClass extends CheckBox implements ICellRenderer
    {
        private var _listData:ListData;
        private var _data:Object;
      
        public function CheckCellClass()
        {
            super(); 
        }
          public function set data(d:Object):void
        {
            _data = d;
            label = "";
        }
       
        public function get data():Object
        {
            return _data;
        }
       
        public function get listData():ListData
        {
            return _listData;
        }
       
        public function set listData(value:ListData):void {
            _listData = value;
        }

        override public function get selected():Boolean {
            return _selected;
        }

        override public function set selected(value:Boolean):void {
        }
       
        public function onCheckClick(e:MouseEvent)
        {
           trace(e.target.name);
            _selected = !_selected;
            _data["checked"] = _selected;
        }
  
     }
}

 

CheckBox 클래스를 상속받고 

ICellRenderer 인터페이스도 상속받아서

new CheckBox 를 만들어서 그리드 컨트롤 컬럼에 적용.

( 적용하고나서 name 값을 줄라고 했더니~ 안되드라;;; 그래서 클래스안에다가 static 변수하나 만들어서 작업. )

'Developer > Action Script 3.0' 카테고리의 다른 글

datagrid 안에 checkbox 등 넣기.  (0) 2010.09.12