Hallo,
ich bin langsam am Verzweifeln. Irgendwie will das neue Image nicht zu Beginn laden...
Ich habe in einem Frame 4 Buttons. Jeder Button soll ein anderes Bild laden
Klicke ich auf einen Button so wird zwar das richtige Bild im Frame angezeigt, allerdings wir nur eine Datei mit schwarzen Bild geschrieben. Erst nach erneutem Klicken speichert es auch das richtige Bild ab.
Ich denke, dass es irgendwie mit dem image zusammenhängt, da es so erscheint, als wenn es zu Beginn nicht richtig da ist.
Ich habe unten mal die Methode eingefügt, die aufgerufen wird, sobald man auf einen Button klickt. Der übergebene Wert ist einmal eine Zahl für den geklickten Button und dann der Hinweis, ob das Bild schwarz/weiß oder farblich angezeigt werden soll.
Vielen Dank schon jetzt für eure Hilfe.
ich bin langsam am Verzweifeln. Irgendwie will das neue Image nicht zu Beginn laden...
Ich habe in einem Frame 4 Buttons. Jeder Button soll ein anderes Bild laden
Klicke ich auf einen Button so wird zwar das richtige Bild im Frame angezeigt, allerdings wir nur eine Datei mit schwarzen Bild geschrieben. Erst nach erneutem Klicken speichert es auch das richtige Bild ab.
Ich denke, dass es irgendwie mit dem image zusammenhängt, da es so erscheint, als wenn es zu Beginn nicht richtig da ist.
Ich habe unten mal die Methode eingefügt, die aufgerufen wird, sobald man auf einen Button klickt. Der übergebene Wert ist einmal eine Zahl für den geklickten Button und dann der Hinweis, ob das Bild schwarz/weiß oder farblich angezeigt werden soll.
Vielen Dank schon jetzt für eure Hilfe.
Code:
protected void saveNewImage(int part, boolean blackWhite) throws Exception{
// 1=SpielfeldHorizontal
// 2=SpielfeldVertikal
// 3=SpielfeldOben
// 4=SpielfeldUnten
BufferedImage scrImage;
Graphics2D scrGraphic;
//lese Name
String name_str = name_tf.getText();
// lese ziel
String ziel_str = ziel_cb.getSelectedItem().toString();
// hole das alte Image, damit ein neues Hineingeschrieben werden kann
String picPath = null;
switch (part) {
case 1:
image = Toolkit.getDefaultToolkit().getImage(
"Icons/uebungIcons/SpielfeldQuer.jpg");
break;
case 2:
image = Toolkit.getDefaultToolkit().getImage(
"Icons/uebungIcons/SpielfeldOU.jpg");
break;
case 3:
image = Toolkit.getDefaultToolkit().getImage(
"Icons/uebungIcons/SpielfeldHalbOben.jpg");
break;
case 4:
image = Toolkit.getDefaultToolkit().getImage(
"Icons/uebungIcons/SpielfeldHalbUnten.jpg");
break;
}
picPath = "Icons\\uebungIcons\\" + ziel_str + name_str +
".jpg";
dateiname = "Icons/uebungIcons/" + ziel_str + name_str +
".jpg";
int imageWidth = image.getWidth(null);
int imageHeight = image.getHeight(null);
scrImage = new BufferedImage(imageWidth, imageHeight,
BufferedImage.TYPE_INT_RGB);
scrGraphic = scrImage.createGraphics();
scrGraphic.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
RenderingHints.VALUE_INTERPOLATION_BILINEAR);
scrGraphic.drawImage(image, 0, 0, 750, 550, null);
ImageIO.write(scrImage, "jpeg", new File(picPath));
icon1.getImage().flush();
}