我正在尝试制作一个屏幕捕获程序。
我所拥有的是一个透明窗口,该窗口将提供要捕获的区域并带有一个按钮capture,并且我试图实例化一个captureScreen在captureScreen使用命令提示符单独执行时有效的类
capture
captureScreen
我试图captureScreen在按下按钮时实例化此类capture。
我尝试将其保留class在我screenrecord.java的代码中,event listener也将代码放入其中。在这两种情况下,我都会得到这些错误
class
screenrecord.java
event listener
AWTException,must be caught or declared
在
Robot robot = new Robot();
和IOException BufferedImage image一致。
BufferedImage image
保持captureScreen.java独立无济于事。System.out.println("Start");甚至什么都不打印。
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"); } }
欢迎您提出所有建议,评论和建议。请帮我解决这个问题。谢谢。
可编辑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实例化另一个功能。