Hi
ich benutze Netbeens unter Windows und bin Anfänger -- ich würde jetzt aber doch gerne für ein kleines Programm wissen wie ich Bilder (das Format ist nicht wichtig) Ausgeben kann. Ich habe bereits bei Google gesucht und das hier gefunden :
[highlight=Java]
ImageComponent.java:
import java.awt.*;
import javax.swing.JComponent;
public class ImageComponent extends JComponent
{
private Image image;
public ImageComponent (Image image)
{
this.image = image;
setPreferredSize (new Dimension (image.getWidth(null),
image.getHeight(null)));
}
public void paintComponent (Graphics g)
{
g.drawImage(image,0,0,null);
}
}
ImageViewer.java:
import javax.swing.JFrame;
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.*;
import javax.imageio.ImageIO;
public class ImageViewer extends JFrame
{
public ImageViewer (Image image, String imageTitle)
{
setTitle ("ImageViewer - " + imageTitle);
ImageComponent imageComponent = new ImageComponent (image);
getContentPane().add(imageComponent);
pack();
setResizable(false);
setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args)
{
if (args.length != 1)
{
System.out.println ("Falsche Nutzung!");
System.out.println ("Das Programm soll mit einer Bilddatei");
System.out.println ("als Argument aufgerufen werden.");
System.out.println ("Leerzeichen im Namen der Bilddatei");
System.out.println ("können auch zu diesem Fehler führen.");
System.exit(1);
}
try
{
File imageFile = new File (args[0]);
BufferedImage image = ImageIO.read(imageFile);
if (image == null)
{
System.out.println ("Bild konnte nicht dekodiert werden!");
System.exit(1);
}
String imageTitle = imageFile.getAbsolutePath();
ImageViewer imageViewer = new ImageViewer (image,imageTitle);
imageViewer.setVisible(true);
}
catch (IOException e)
{
System.out.println ("Datei konnte nicht geladen werden!");
System.exit(1);
}
}
}[/highlight]
Jedoch weiß ich nicht wo ich da jetzt den Pfad des Bildes auswählen kann ...
Wahrscheinlich ist es recht simpel aber ich komme (nach mehrfachem ausprobieren) nicht darauf .
Ich würde über jegliche Hilfe freuen ...
max
ich benutze Netbeens unter Windows und bin Anfänger -- ich würde jetzt aber doch gerne für ein kleines Programm wissen wie ich Bilder (das Format ist nicht wichtig) Ausgeben kann. Ich habe bereits bei Google gesucht und das hier gefunden :
[highlight=Java]
ImageComponent.java:
import java.awt.*;
import javax.swing.JComponent;
public class ImageComponent extends JComponent
{
private Image image;
public ImageComponent (Image image)
{
this.image = image;
setPreferredSize (new Dimension (image.getWidth(null),
image.getHeight(null)));
}
public void paintComponent (Graphics g)
{
g.drawImage(image,0,0,null);
}
}
ImageViewer.java:
import javax.swing.JFrame;
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.*;
import javax.imageio.ImageIO;
public class ImageViewer extends JFrame
{
public ImageViewer (Image image, String imageTitle)
{
setTitle ("ImageViewer - " + imageTitle);
ImageComponent imageComponent = new ImageComponent (image);
getContentPane().add(imageComponent);
pack();
setResizable(false);
setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args)
{
if (args.length != 1)
{
System.out.println ("Falsche Nutzung!");
System.out.println ("Das Programm soll mit einer Bilddatei");
System.out.println ("als Argument aufgerufen werden.");
System.out.println ("Leerzeichen im Namen der Bilddatei");
System.out.println ("können auch zu diesem Fehler führen.");
System.exit(1);
}
try
{
File imageFile = new File (args[0]);
BufferedImage image = ImageIO.read(imageFile);
if (image == null)
{
System.out.println ("Bild konnte nicht dekodiert werden!");
System.exit(1);
}
String imageTitle = imageFile.getAbsolutePath();
ImageViewer imageViewer = new ImageViewer (image,imageTitle);
imageViewer.setVisible(true);
}
catch (IOException e)
{
System.out.println ("Datei konnte nicht geladen werden!");
System.exit(1);
}
}
}[/highlight]
Jedoch weiß ich nicht wo ich da jetzt den Pfad des Bildes auswählen kann ...
Wahrscheinlich ist es recht simpel aber ich komme (nach mehrfachem ausprobieren) nicht darauf .
Ich würde über jegliche Hilfe freuen ...
max
Zuletzt bearbeitet von einem Moderator: