Flex DataGrid列表突出显示

时间:2011-01-10 18:52:46

标签: flex list datagrid adobe highlight

默认情况下,无论何时rollOver / mouseOver(不确定区别)Datagrid或List中的项目,该项目都会使用组件的rollOverColor突出显示。我只是想知道是否有任何方式可以通过编程方式进行。我还没有能够在这个问题上找到很多帮助。例如,假设我有两个DataGrids。当我在第一个DataGrid中滚动一个项目时,我想在第二个中突出显示相应的索引。基本上,好像两个单独的游标是rollOver两个独立的DataGrids。我怎么能这样做?

  • 伊恩

2 个答案:

答案 0 :(得分:1)

您可以侦听datagrid的itemRollOver事件,然后使用selectedIndexselectedItem属性在其他数据网格中选择一行。

答案 1 :(得分:0)

1)使用此功能创建自定义DataGrid:

public function indicesToItemRenderer(rowIndex:int, colIndex:int):IListItemRenderer
    {
        var firstItemIndex:int = verticalScrollPosition - offscreenExtraRowsTop;
        if (rowIndex < firstItemIndex ||
                rowIndex >= firstItemIndex + listItems.length
                )
        {
                return null;
        }

        return listItems[rowIndex - firstItemIndex][colIndex];
    }

2)当您想要突出显示某个项目时,请调用以下代码:

youCustomADG.indicesToItemRenderer(idxRow, idxCol).dispatchEvent(new MouseEvent(MouseEvent.MOUSE_OVER);