Ciao ragazzi girando su internet ho trovato questa classe


codice:
import java.awt.AWTException;
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.awt.Dimension;
import java.awt.*;

import javax.imageio.ImageIO;

public class RobotExp {
    
    public static void main(String[] args) {
        
        try {
            
            Robot robot = new Robot();
            // Capture the screen shot of the area of the screen defined by the rectangle
			Dimension screen = 	Toolkit.getDefaultToolkit().getScreenSize();
            BufferedImage bi=robot.createScreenCapture(new Rectangle(800,800));
            ImageIO.write(bi, "jpg", new File("graphics1.jpg"));
            
        } catch (AWTException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
Vorrei che al posto di fare lo screenshot dell'intero Desktop, facesse lo screenshot di un JFrame è possibile? Ci ho provato in diversi modi ma mi sono dannato senza risultati.

Credo che la parte da modificare sia:
codice:
Dimension screen = 	Toolkit.getDefaultToolkit().getScreenSize();
O sbaglio? Ma come faccio a passargli il JPANEL piuttosto che lo screensize?