Vediamo, allora, di sistemare la classe ImagePanel:
Così dovrebbe andare...codice:public class ImagePanel extends JInternalFrame { public JInternalFrame finestra; public JScrollPane srcimgpanel; public DisplayJAI srcimg; public RenderedImage imgsrc; public ImagePanel(String fileName) { super(fileName, true, true, true, true); imgsrc = JAI.create("fileload", fileName); srcimgpanel = new JScrollPane(); srcimg = new DisplayJAI(imgsrc); srcimgpanel.getViewport().add(srcimg); setPreferredSize(new Dimension(640, 480)); setSize(640, 480); getContentPane().add(srcimgpanel); setVisible(true); } public ImagePanel(String fileName, DisplayJAI immagine) { super(fileName, true, true, true, true); srcimgpanel = new JScrollPane(); srcimgpanel.getViewport().add(immagine); setSize(640, 480); getContentPane().add(srcimgpanel); setVisible(true); } public JInternalFrame CreatePanel(String fileName) { return new ImagePanel(fileName); } public JInternalFrame CreatePanel(DisplayJAI immagine){ return new ImagePanel("Immagine Modificata", immagine); } public RenderedImage getOriginalImage() { return imgsrc; } }
Ora devi modificare la dichiarazione di finestra all'interno del programma principale: lo devi dichiarare di tipo ImagePanel e non JInternalFrame. Tutto dovrebbe andare.
Ciao.![]()



Rispondi quotando