Servus,
ich möchte für eine Vorschau-Funktion ein Fenster im Hintergrund rendern. Z.Z. soll das ganze noch in eine Datei gespeichert werden. Das funktioniert sehr gut - solange das Fenster sichtbar ist. Das Aufblitzen des Fensters in dieser Lösung möchte ich aber auf jeden Fall vermeiden. Wie?
Code (Q’n’D):
package mis;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JButton;
import javax.swing.JDialog;
public class Main {
/\*\*
\* @param args the command line arguments
\*/
public static void main(String[] args) throws IOException {
JDialog mainFrame = new JDialog();
JButton jb = new JButton("a");
mainFrame.add(jb);
mainFrame.setSize(128, 128);
mainFrame.setUndecorated(true);
mainFrame.setVisible(true);
BufferedImage i = new BufferedImage(256,256,BufferedImage.TYPE\_INT\_RGB);
mainFrame.getRootPane().paintComponents(i.getGraphics());
ImageIO.write(i, "jpg", new File("./1.jpg"));
mainFrame.dispose();
System.exit(0);
}
}
Vielen Dank im Voraus.
michi