小编典典

无法使用按钮实例化课程

java

我正在尝试制作一个屏幕捕获程序。

我所拥有的是一个透明窗口,该窗口将提供要捕获的区域并带有一个按钮capture,并且我试图实例化一个captureScreencaptureScreen使用命令提示符单独执行时有效的类

我试图captureScreen在按下按钮时实例化此类capture

我尝试将其保留class在我screenrecord.java的代码中,event listener也将代码放入其中。在这两种情况下,我都会得到这些错误

AWTException,must be caught or declared

 Robot robot = new Robot();

和IOException BufferedImage image一致。

保持captureScreen.java独立无济于事。System.out.println("Start");甚至什么都不打印。

这是我的screenrecord.java代码

public class screenrecord extends JFrame implements ActionListener{
    public screenrecord() {...
    }
    public void actionPerformed(ActionEvent e){
        if ("record".equals(e.getActionCommand())) {
            captureScreen a = new captureScreen();
            } 
    }   
}

并且captureScreen.java,可以单独正常工作。

public class captureScreen extends Object{

    public static void main(String args[]){
        ...
        Robot robot = new Robot();
        BufferedImage image = robot.createScreenCapture(screenRectangle);
        ImageIO.write(image, "png", new File(filename));
        System.out.println("Done");
    }

}

欢迎您提出所有建议,评论和建议。请帮我解决这个问题。谢谢。


阅读 204

收藏
2020-09-26

共1个答案

小编典典

可编辑captureScreen.javaas,

public class captureScreen extends Object{

    public captureScreen() {
        ....
        filename = ".\\out.png";
        try{Robot robot = new Robot();
             ............ }
        catch(Exception e)  /* Catch Exceptions too  */
        {
            System.out.println("Error"+e);
        }
    }

    public static void main(String args[]){
        new captureScreen();
    }
}

使用main实例化另一个功能。

2020-09-26