Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/376.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.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重新绘制管理器和JFileChooser_Java_Swing_Jfilechooser_Double Buffering_Repaintmanager - Fatal编程技术网

Java重新绘制管理器和JFileChooser

Java重新绘制管理器和JFileChooser,java,swing,jfilechooser,double-buffering,repaintmanager,Java,Swing,Jfilechooser,Double Buffering,Repaintmanager,我正在用Java编写一个模拟软件。我有一个画框,里面有双缓冲。以下是我在constructor中如何做到这一点: repaintmanager = new UnRepaintManager(); repaintmanager.setDoubleBufferingEnabled(false); RepaintManager.setCurrentManager(repaintmanager); 我想创建一个JFileChooser: else if(e.getSou

我正在用Java编写一个模拟软件。我有一个画框,里面有双缓冲。以下是我在constructor中如何做到这一点:

    repaintmanager = new UnRepaintManager();
    repaintmanager.setDoubleBufferingEnabled(false);
    RepaintManager.setCurrentManager(repaintmanager);
我想创建一个JFileChooser:

    else if(e.getSource()==sendPhotoToAll)
    {
        System.out.println("11111111111111");
        chooser.setDialogTitle("Choose Photo");
        //the "this" in the below code is the JFrame that acts as the 
        //parent to the JFileChooser dialog.
        int retval = chooser.showOpenDialog(BattleZoneTest.this);
        System.out.println(retval);
        if (retval == JFileChooser.APPROVE_OPTION) {
            //... The user selected a file, get it, use it.
            File file = chooser.getSelectedFile();
        }
    }

文件选择器弹出,但我无法对其执行任何操作。当我尝试在构造函数中的RepaitManager事件之前创建一个随机JFileChooser时,选择器会按预期正常工作。重新绘制管理器对filechooser有什么影响?我怎样才能修好它?提前感谢

为什么要将
repaitmanager
更改为使用双缓冲进行绘制?我的猜测是,您的自定义重新绘制管理器根本不重新绘制,因此您不会在文件选择器中看到对您的操作的反应什么是
未重新绘制管理器
?不知道您为什么要覆盖重新绘制管理器,也许可以为不确定的问题带来一点启发谢谢@stryba ur right。我在internet上的某个示例上构建了我的代码,该示例对DB使用了错误的策略。7年前我实现了一个游戏,使用线程进行双缓冲,它工作得很好,但是我找不到代码xD,我清除了repeaintmanager,现在它工作了。它只在我按下按钮时闪烁,这不是什么大问题。再次感谢大家!!!