Друзья, очень нужна помощь, такая ситуация, есть проект по редактированию картинки, в нем есть кнопка, при нажатии на которую открывается отдельное окно (фрейм) и в него должна загружаться отдельная картинка, все работает, но только картинка не загружается, понимаю что ошибка скорее всего простая, но уже нету времени разбираться=( очень нужна помощ!!! заранее спасибо=)
Ссылка на проект
http://vk.com/doc43583533_254239107?...bff6255eb171e2
код исходного файла:
Код:
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
import java.net.URL;
import java.util.*;
import javax.swing.ImageIcon;
/**
*
* @author develop
*/
public class ImageFilterDemo extends Applet implements ActionListener {
Image img;
PlugInFilter pif;
Image fimg;
Image curImg;
LoadedImage lim;
Label lab;
Button reset;
Frame f;
Button btnAbout;
public void init() {
setLayout(new BorderLayout());
Panel p = new Panel();
add(p, BorderLayout.SOUTH);
reset = new Button("Reset");
reset.addActionListener(this);
p.add(reset);
StringTokenizer st = new StringTokenizer("Grayscale+Invert+Contrast+Blur+Sharpen", "+");
while (st.hasMoreTokens()) {
Button b = new Button(st.nextToken());
b.addActionListener(this);
p.add(b);
}
lab = new Label("");
add(lab, BorderLayout.NORTH);
img = getImage("brigantina.jpg");
lim = new LoadedImage(img);
add(lim, BorderLayout.CENTER);
//////
f = new AppletAbout("Автор");
f.setSize(200, 300);
f.setVisible(false);
btnAbout = new Button("Автор");
p.add(btnAbout);
btnAbout.addActionListener(this);
/////
}
public void stop() {
f.setVisible(false);
}
public void actionPerformed(ActionEvent ae) {
String a = "";
try {
a = (String) ae.getActionCommand();
if (a.equals("Reset")) {
lim.set(img);
lab.setText("Normal"); }
else if (a.equals("Автор")) {
f.setVisible(true); }
else {
pif = (PlugInFilter) Class.forName(a).newInstance();
fimg = pif.filter(this, img);
lim.set(fimg);
lab.setText("Filtered: " + a);
}
repaint();
} catch (ClassNotFoundException e) {
lab.setText(a + " not foud");
lim.set(img);
repaint();
} catch (InstantiationException e) {
lab.setText("coud't new " + a);
} catch (IllegalAccessException e) {
lab.setText("no access: " + a);
}
}
public Image getImage(String name){
URL imgUrl = getClass().getClassLoader().getResource("resources/"+name);
ImageIcon icon = new ImageIcon(imgUrl);
return icon.getImage();
}
}
Код класса описывающего окно фрейма:
Код:
import java.awt.BorderLayout;
import java.awt.Frame;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
import java.net.URL;
import java.util.*;
import javax.swing.ImageIcon;
/**
*
* @author develop
*/
public class AppletAbout extends Frame {
Image img,img1;
LoadedImage lim;
AppletAbout(String title) {
MyWindowsAdapter adapter = new MyWindowsAdapter(this);
addWindowListener(adapter);
}
public void init() {
img1=getImage(getDocumentBase(), "3.jpg");
img = getImage("3.jpg");
lim = new LoadedImage(img);
add(lim, BorderLayout.SOUTH);
}
public void paint(Graphics g) {
g.drawString("Проект выполнил студент группы:",10,40);
g.drawString("РРџ-51 Парфенов Николай", 10, 60);
g.drawImage(img1,10,80,this);
}
public Image getImage(String name){
URL imgUrl1 = this.getClass().getClassLoader().getResource("ress/"+name);
ImageIcon icon = new ImageIcon(imgUrl1);
return icon.getImage();
}
}
class MyWindowsAdapter extends WindowAdapter {
AppletAbout sampleFrame;
public MyWindowsAdapter(AppletAbout sampleFrame) {
this.sampleFrame = sampleFrame;
}
public void windowClosing(WindowEvent we) {
sampleFrame.setVisible(false);
}
}
___________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE]
Модератор.