Flex:从DataGrid的最后一个单元格中检测“tab”键

时间:2010-01-25 16:22:56

标签: flex datagrid

在Datagrid中,如何检测用户何时按下最后一个单元格中的“Tab”键?使用KEY_DOWN事件时,所选单元格未知,使用FOCUS_OUT我们不知道按下的键。

提前致谢

1 个答案:

答案 0 :(得分:0)

您可以像这样扩展DataGrid,处理KeyboardEvent.KEY_DOWN事件

public class CustomRowColorDataGrid extends DataGrid
{

    public function CustomRowColorDataGrid()
    {
        super();
        this.addEventListener(KeyboardEvent.KEY_DOWN,keyDownHandler);
    }
    private function keyDownHandler(e:KeyboardEvent) : void
    {

        trace("onKeyDown:" + e.keyCode) ;
        //TAB is 9      
        if(e.keyCode == 9)
        {
            // your logic here
        }
    }

或者您也可以声明一个常规的Flex网格并遵循相同的想法

<mx:DataGrid id="yourGrid" keyDown="keyDownHandler(event)">

</mxDataGrid>
<fx:Script>
    private function keyDownHandler(e:KeyboardEvent) : void
    {

        trace("onKeyDown:" + e.keyCode) ;
        //TAB is 9  

        if(e.keyCode == 9)
        {
            // your logic here
        }
    }
</fx:Script>