FLEX 获取DataGrid行号和列号示例代码
获取DataGrid行号和列号在使用过程中还是蛮实用的,下面为大家详细介绍下FLEX是如何做到的,感兴趣的朋友可以了解下
一、获取行号
var findex:Number = Math.floor(dg.contentMouseY/dg.rowHeight)-1 + dg.verticalScrollPosition;
//dg.contentMouseY是鼠标所在的local坐标系相对于datagrid的高度
//dg.rowHeight是datagrid的行高,math.floor作用是截断小数点
//verticalScrollPosition是如果datagrid有滚动条的话,向下滚动的行数。这样findex就是鼠标所在的行数
if (findex<0 || findex>=dg.verticalScrollPosition+dg.rowCount-1) //行号小于0时和大于datagrid行总数时的 错误处理
{
//什么也不做
} else {
.............
}
二、获取列号
var _editColumn:DataGridColumn=dgRainRealtime.columns[event.columnIndex];
var editValue:String=dgRainRealtime.itemEditorInstance[_editColumn.editorDataField]; //获得被编辑的雨量值
var _editValue:int=int(editValue);
var _row:int=dgRainRealtime.editedItemPosition.rowIndex;
var _column:int=dgRainRealtime.editedItemPosition.columnIndex;
var col:DataGridColumn=dgRainRealtime.columns[_column-1];
var deviceName:String=dgRainRealtime.dataProvider.getItemAt(_row)[col.dataField]; //获得的被编辑雨量值的站点名字
复制代码 代码如下:
var findex:Number = Math.floor(dg.contentMouseY/dg.rowHeight)-1 + dg.verticalScrollPosition;
//dg.contentMouseY是鼠标所在的local坐标系相对于datagrid的高度
//dg.rowHeight是datagrid的行高,math.floor作用是截断小数点
//verticalScrollPosition是如果datagrid有滚动条的话,向下滚动的行数。这样findex就是鼠标所在的行数
if (findex<0 || findex>=dg.verticalScrollPosition+dg.rowCount-1) //行号小于0时和大于datagrid行总数时的 错误处理
{
//什么也不做
} else {
.............
}
二、获取列号
复制代码 代码如下:
var _editColumn:DataGridColumn=dgRainRealtime.columns[event.columnIndex];
var editValue:String=dgRainRealtime.itemEditorInstance[_editColumn.editorDataField]; //获得被编辑的雨量值
var _editValue:int=int(editValue);
var _row:int=dgRainRealtime.editedItemPosition.rowIndex;
var _column:int=dgRainRealtime.editedItemPosition.columnIndex;
var col:DataGridColumn=dgRainRealtime.columns[_column-1];
var deviceName:String=dgRainRealtime.dataProvider.getItemAt(_row)[col.dataField]; //获得的被编辑雨量值的站点名字
很赞哦!()
大图广告(830*140)