Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 键盘事件在jlist中丢失_Java_Swing_Focus_Jlist_Keyboard Events - Fatal编程技术网

Java 键盘事件在jlist中丢失

Java 键盘事件在jlist中丢失,java,swing,focus,jlist,keyboard-events,Java,Swing,Focus,Jlist,Keyboard Events,加载内容时,框架将被禁用 void makeEnable(Container parent, boolean enabled) { for(Component c : parent.getComponents()) { c.setEnabled(enabled); if(c instanceof Container) { makeEnable((Container)c, enabled); } } } 但

加载内容时,框架将被禁用

void makeEnable(Container  parent, boolean enabled) {
    for(Component c : parent.getComponents()) {
        c.setEnabled(enabled);
        if(c instanceof Container) {
            makeEnable((Container)c, enabled);
        }
    }
}
但是JList有一个问题-当用户选择项目时,他可以使用上/下箭头在列表中移动。在启用然后禁用帧后,这将变得不可能。该项目已选中,但用户必须单击JList才能再次使用箭头

您知道让应用程序不获取输入事件的其他解决方案吗? 这个问题有什么解决办法吗?
我知道有些人通过显示/隐藏JGlassPane或JXLayerPane来捕获所有传入事件。您是否尝试将焦点放在JList上?我怀疑通过禁用帧,JList会失去焦点。重新启用帧时,还应尝试还原具有焦点的组件。@GuillaumePolet就是这样。请集中注意力。谢谢你的帮助。