DataGrid--在列中加CheckBox

 一. 在时间轴代码层

    1.把Button、CheckBox、DataGrid组件加到Libray面板中

    2.在时间轴加以下代码

      import fl.controls.DataGrid;
      import fl.controls.dataGridClasses.DataGridColumn;
      import fl.data.DataProvider;
      import fl.events.DataGridEvent;
      import fl.controls.Button;

      var dp:DataProvider = new DataProvider();

      dp.addItem({choose:true, title:"image1.jpg"});
      dp.addItem({choose:false, title:"image2.jpg"});
      dp.addItem({choose:true, title:"image3.jpg"});

      var dataGrid:DataGrid = new DataGrid();
      dataGrid.columns = ["choose ","title"];
      dataGrid.columns[0].cellRenderer = DataGridCellRenderer_CheckBox;

      dataGrid.dataProvider = dp;
      dataGrid.rowHeight = 64;
      dataGrid.width = 200;
      dataGrid.rowCount = dp.length ;
      dataGrid.move(10, 10);
      addChild(dataGrid);

      //加一个查看结果的按钮
      var button:Button = new Button
      addChild(button);
      button.move(90,260);
      button.label = '查看结果';
      button.addEventListener(MouseEvent.CLICK, showResult);
      function showResult(e:Event){
          for(var i:int=0; i<dataGrid.dataProvider.length;i++){
              var rowObj:Object = dataGrid.dataProvider.getItemAt(i);
              trace('choose:'+ rowObj.choose  + ' title:'+rowObj.title );
         }
      }

 

  2.DataGridCellRenderer_CheckBox.as

      package {
          import fl.controls.CheckBox;
          import fl.controls.listClasses.ICellRenderer;
          import fl.controls.listClasses.ListData;
          import flash.events.Event;
          //import fl.core.InvalidationType;
          import flash.events.MouseEvent;

          public class DataGridCellRenderer_CheckBox extends CheckBox implements ICellRenderer {
              private var _listData:ListData;
              private var _data:Object;

              public function DataGridCellRenderer_CheckBox() {
                  super();
                  addEventListener(MouseEvent.CLICK, onCheckClick);
              }
              public function set data(d:Object):void {
                  _data = d;        //d是行对象, 其成员是这一行的每一列的值
                  _selected = _data['choose']; //赋初值(但每次也会被重新设值,所以在下面用户选择变化时,一定要同步更新数据源)
                 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) {
                 _selected = !_selected;
                  _data["choose"] = _selected;  //更新数据源(要不然,即使做了修改,在set data()时,会把原来的值重新写回)
              }
          }
      }

 

 3.最终样式

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
<div style=";text-align:center;;height:auto;" class="datagrid-cell datagrid-cell-c1-checkId">已通过</div></td><td field="button"><div style=";height:auto;" class="datagrid-cell datagrid-cell-c1-button"><a href="#" style="color: red" onclick="fileManager(0)">图片管理</a></div></td><td field="truckNo"><div style=";height:auto;" class="datagrid-cell datagrid-cell-c1-truckNo">辽PD6885</div></td><td field="truckCardColor"><div style=";text-align:center;;height:auto;" class="datagrid-cell datagrid-cell-c1-truckCardColor">黄牌</div></td><td field="vtNam"><div style=";height:auto;" class="datagrid-cell datagrid-cell-c1-vtNam">秦皇岛九福物流有限公司</div></td><td field="driverNam"><div style=";height:auto;" class="datagrid-cell datagrid-cell-c1-driverNam">叶红建</div></td><td field="linkTel"><div style=";height:auto;" class="datagrid-cell datagrid-cell-c1-linkTel">13842929049</div></td><td field="workCompanyCod"><div style=";text-align:center;;height:auto;" class="datagrid-cell datagrid-cell-c1-workCompanyCod">金海粮油</div></td><td field="cargoNam" style="display:none;"><div style=";height:auto;" class="datagrid-cell datagrid-cell-c1-cargoNam"></div></td><td field="consignCod" style="display:none;"><div style=";height:auto;" class="datagrid-cell datagrid-cell-c1-consignCod"></div></td><td field="planDte"><div style=";height:auto;" class="datagrid-cell datagrid-cell-c1-planDte">2023-05-01</div></td><td field="validTyp"><div style=";height:auto;" class="datagrid-cell datagrid-cell-c1-validTyp">当天有效</div></td><td field="ifEnd"><div style=";height:auto;" class="datagrid-cell datagrid-cell-c1-ifEnd">x</div></td><td field="individualId" style="display:none;"><div style=";height:auto;" class="datagrid-cell datagrid-cell-c1-individualId">0</div></td><td field="rejectReason"><div style=";height:auto;" class="datagrid-cell datagrid-cell-c1-rejectReason"></div></td><td field="checkNam"><div style=";height:auto;" class="datagrid-cell datagrid-cell-c1-checkNam">jhly</div></td><td field="checkTim"><div style=";height:auto;" class="datagrid-cell datagrid-cell-c1-checkTim">2023-04-29 21:09</div></td>以上代码为网页源码,帮我写一段python程序从以上代码中找出drivernam和checkTim并保存数据库中
最新发布
06-13

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值