【发布时间】:2011-01-09 04:12:14
【问题描述】:
在 Datagrid 中,如何检测用户何时从最后一个单元格中按下“Tab”键?对于 KEY_DOWN 事件,所选单元格是未知的,对于 FOCUS_OUT 我们不知道按下的键。
提前致谢
【问题讨论】:
-
我认为这是这个问题的副本:stackoverflow.com/questions/2133768/…
标签: apache-flex datagrid
在 Datagrid 中,如何检测用户何时从最后一个单元格中按下“Tab”键?对于 KEY_DOWN 事件,所选单元格是未知的,对于 FOCUS_OUT 我们不知道按下的键。
提前致谢
【问题讨论】:
标签: apache-flex datagrid
您可以像这样扩展 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>
【讨论】: