将焦点设置为特殊组件

时间:2011-04-19 12:45:17

标签: swing haxe setfocus

我有一个类Dialog,它封装了org.aswing.Component类型的窗口 我用这种方式创建函数focus()

public function focus() {
    if (Std.is(window, org.aswing.Component)) {
        var b = window.requestFocus();
    } 
}

执行此函数后b为真(即reqest有效)但没有触发事件编译器。你能解释一下如何强制对焦设置吗?

2 个答案:

答案 0 :(得分:0)

容器(包括JWindow)无法集中注意力。要确定组件是否可以聚焦,您应该使用类似下面的内容

trace(component.isFocusable());

仔细查看http://doc.aswing.org/a3/

答案 1 :(得分:0)

当您创建JWindow时,您可以传入modal = true,这将确保JWindow始终位于顶部并阻止用户访问其他JWindows中的组件。您也可以在创建JWindow之后调用它的setModal()方法。