jpeg Bild anzeigen java

Status
Nicht offen für weitere Antworten.

sousou

Bekanntes Mitglied
hallo ihr lieben,

ich bin dabei, das man ein bild das sich bei mir auf dem Deskop befindet, ganz normal anzuzeigen. Also hab eigentlich null ahnung davon habs jedoch versucht mich da einzuarbeiten und das ist das Ergebnis:



[Java]
package javaapplication4;

import javax.swing.JFrame;


public class Main {


public static void main(String[] args) {
// TODO code application logic here

String titel = "Kosmos Bild";

ImageViewe p = new ImageViewe(titel);

JFrame window = new JFrame( );
window.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
window.setSize( p.width, p.height ); // die größe des Fenster, wird mit setSize eingerichtitet das heisst // das bild ist 500 px breit und 600 px high
window.setVisible(true); // Für setVisible muss ein Objekt des Bildes vom TYP FRAME sein. Der Aufruf von setVisible(true) zeigt das Fenster an.

p.paint();

}

}[/code]



Java:
package javaapplication4;

import java.awt.*;

public class ImageViewe {

            int width = 0;
            int height = 0;

            public ImageViewe(String titel){

                // Super darf nur in einen Konstruktor aufgerufen werden & muss die erste Anweisung sein!
                super(titel);
            }

           public void paint(Graphics g) {

               String filename = "F:\\Users\\Jousef\\Desktop\\yupi.jpg";

               Image img1 = Toolkit.getDefaultToolkit().getImage(filename);
               this.width = img1.getWidth(this);
               this.height = img1.getHeight(this);     

  }
            
}


Fehlermeldung ist beispielsweise das mit titel...

Exception in thread "main" java.lang.RuntimeException: Uncompilable source code
at javaapplication4.ImageViewe.<init>(ImageViewe.java:14)
at javaapplication4.Main.main(Main.java:14)
Java Result: 1


Würd mich freuen wenn jemand drauf schaut

lg
 
Zuletzt bearbeitet von einem Moderator:

Spin

Top Contributor
Ohje , dein Source Code ist total unsauber und nicht compilierbar , wegen deinen super() und noch ein paar andere Sachen.

Du hast eine Bildanzeige Klasse und eine main.

Du möchtest in deiner Main lediglich das Fenster erstellen lassen und die Instanz deiner anderen Klasse aufrufen. Das geht auch , blo nicht so wie du es gemacht hast.

Warum lädst du es nicht in ein BufferedImage rein?

Java:
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);
}
}
}


Das ist ein einfaches Beispiel, was dir das Laden erklärt.
Halt dich nicht an Image Component auf, dass brauchst du nicht.

Es reicht wenn du es in dein Frame hineinlädst.

also trx und catch und laden ins Buffered Image und auf das ContentPane() legen .
grüße
 

HoaX

Top Contributor
Also ich sehe da mehrere Fehler, u.a. aber auch, dass du vll. erstmal mit was kleinerem anfangen solltest. Z.B. nem einfachen Fester mit paar Buttons.

Wenn du deinen Code kompilierst dann sollte da genau stehen was in Zeile 14 nicht richtig ist.
 

L-ectron-X

Gesperrter Benutzer
Wenn du super() aufrufst, solltest du auch von einer brauchbaren Klasse geerbt haben.
In deinem Fall funktioniert das nicht, weil deine Klasse automatisch von Object erbt, wenn du explizit keine Klasse angibst. Und Objekt hat keinen Konstruktor, der ein String-Argument erwartet.

[c]ImageViewe p = new ImageViewe();[/c] wäre demnach richtig.
Den Titel übergibst du deinem JFrame: [c]JFrame window = new JFrame(titel);[/c]

So was vergiss ganz schnell. paint() wird niemals vom Programmierer aufgerufen.

Oben habe ich gesagt, dass du, wenn du super() benutzen möchtest, von einer anderen Klasse erben musst.
Deine Klasse ImageViewe soll eine GUI-Komponente sein, die in einem Fenster angezeigt werden soll. In deinem Fall kann das bspw. ein JComponent, ein JLabel oder ein JPanel sein.
Wenn deine GUI-Komponente sich wie ein JPanel verhalten soll, lässt du es von JPanel erben.
[c]public class ImageViewe extends JPanel {[/c] Dabei den Import des richtigen Paketes nicht vergessen.

Wenn du in einer JComponent malen möchtest, musst du die paintComponent()-Methode überschreiben, nicht paint().
Als erste Anweisung in einer überschriebenen paintComponent()-Methode sollte immer
[c]super.paintComponent(g);[/c] stehen, um auch die geerbte Methode aus der Basisklasse aufzurufen. Damit wird schon mal ein Standard-Hintergrund gezeichnet.

Auf das Laden von Bildern in der paint()- bzw. paintComponent()-Methode sollte unbedingt verzichtet werden, weil dieser Vorgang bei jedem Update der GUI erneut durchgeführt werden würde - ein Performance-Disaster...

Das Laden von Bildern in Swing-Applikationen sollte auch nicht mehr über das alte Toolkit erfolgen, sondern über die spezialisierte, effiziente Klasse javax.imageio.ImageIO.

Codebeispiele zur sauberen Lösung deines Problems findest du zur Genüge im Forum.
 
Zuletzt bearbeitet:
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Jpeg-bILD Java Basics - Anfänger-Themen 19
K Wohin gehört in Eclipse ein jpeg-Bild ? Java Basics - Anfänger-Themen 4
T jpeg Bilder zoomen.. Java Basics - Anfänger-Themen 2
H Erste Schritte Von jpg zu jpeg // reguläre Ausdrücke Java Basics - Anfänger-Themen 3
B große jpeg verarbeiten Java Basics - Anfänger-Themen 8
S jpeg bzw bufferedimage als PDF Speichern Java Basics - Anfänger-Themen 13
A JPEG anzeigen Java Basics - Anfänger-Themen 3
D File(jpeg) größe ändern und dann zu einen byte[] Java Basics - Anfänger-Themen 7
T JApplet JPEG einbinden geht nur "offline" Java Basics - Anfänger-Themen 6
G JPEG aus Blob als ImageIcon anzeigen Java Basics - Anfänger-Themen 5
C java, jpeg, animiert Java Basics - Anfänger-Themen 9
G JPEG einlesen Java Basics - Anfänger-Themen 7
N html in jpeg umwandeln Java Basics - Anfänger-Themen 6
D BMP in JPEG konvertieren Java Basics - Anfänger-Themen 2
S tif in jpeg Java Basics - Anfänger-Themen 5
B ImageIcon komprimieren (zB Jpeg) Java Basics - Anfänger-Themen 14
M jpeg in ein Frame zaubern Java Basics - Anfänger-Themen 10
A JPEG mit ins JAR-Archiv Java Basics - Anfänger-Themen 3
Athro-Hiro Weißes Bild in Java erstellen Java Basics - Anfänger-Themen 3
V Bild per Java Script austauschen Java Basics - Anfänger-Themen 7
I Bild richtig speichern / Hochkant im File Explorer, nach Upload vertikal Java Basics - Anfänger-Themen 9
B Bild per KeyListener drehen Java Basics - Anfänger-Themen 1
I Kamera anschließen / Bild machen / Live View / Externe Blitz Java Basics - Anfänger-Themen 19
I Innerhalb einem Bild ein Teil austauschen Java Basics - Anfänger-Themen 26
I Datei (Bild) Drucken und wie Druckeinstellung speichern? Java Basics - Anfänger-Themen 3
krgewb byte-Array, das ein Bild repräsentiert Java Basics - Anfänger-Themen 1
H Artefact mit Bild erzeugen Java Basics - Anfänger-Themen 11
R UML-Bild (Erkennung ob static o. nicht) Java Basics - Anfänger-Themen 18
J Bild auf Hintergrundbild zeichnen Java Basics - Anfänger-Themen 5
krgewb Bild itextpdf Java Basics - Anfänger-Themen 2
C Bild in executable JAR File mitgeben Java Basics - Anfänger-Themen 5
VPChief Bild in JEditorPane Java Basics - Anfänger-Themen 9
B Warum bekomme ich kein Bild. Java Basics - Anfänger-Themen 10
S Bild einfügen // NEU Java Basics - Anfänger-Themen 12
N Bild drehen Java Basics - Anfänger-Themen 3
S Ein Bild mit dynamischer Quelle neuzeichnen Java Basics - Anfänger-Themen 12
N GLOOP Bild nicht ansichtbar Java Basics - Anfänger-Themen 5
M Bild in JFrame Java Basics - Anfänger-Themen 1
B Signatur erstellen - Bild ist nur weiß Java Basics - Anfänger-Themen 0
CptK Interface Bild rotieren Java Basics - Anfänger-Themen 17
CptK Interface Bild rotieren Java Basics - Anfänger-Themen 1
Anica Processing Animation Bild-Position ändern Java Basics - Anfänger-Themen 9
CptK Interface Bild über Methode ändern funktioniert nicht Java Basics - Anfänger-Themen 4
CptK Interface Curser durch Bild ersetzen & MouseListner Java Basics - Anfänger-Themen 2
M jTextPane Bild anzeigen Java Basics - Anfänger-Themen 6
CptK Bild beim betätigen eines JButtons Java Basics - Anfänger-Themen 6
S Bild über JButton legen Java Basics - Anfänger-Themen 3
B Bild mit Schrift befüllen / Anpassung bei Wortlänge Java Basics - Anfänger-Themen 2
D Google maps bild mit marker versehen Java Basics - Anfänger-Themen 12
D ImageView mit einfarbigem Bild fuellen Java Basics - Anfänger-Themen 3
it_is_all Bild-Pfad wird gefunden, nicht aber Textdatei-Pfad Java Basics - Anfänger-Themen 8
M Einzelne Pixel in einem Bild auslesen und bearbeiten Java Basics - Anfänger-Themen 1
M Bild wird von JFrame nicht geladen Java Basics - Anfänger-Themen 12
J Bild in Button einsetzen Java Basics - Anfänger-Themen 6
S button kommt durch bild Java Basics - Anfänger-Themen 13
M Ein Bild durch Objekterzeugung zeichnen Java Basics - Anfänger-Themen 5
B Greenscreen (grüner Hintergrund ersetzen mit Bild) Java Basics - Anfänger-Themen 49
K Interface Kein Bild im .jar-File Java Basics - Anfänger-Themen 15
S Bild in Jar-File mit ImageIO Java Basics - Anfänger-Themen 50
S Bild einfügen Java Basics - Anfänger-Themen 16
binop Bild anzeigen lassen Java Basics - Anfänger-Themen 2
D Bild zu Text Java Basics - Anfänger-Themen 4
I HTML Code in Bild (transparent) konvertieren Java Basics - Anfänger-Themen 0
I Watermark erstellen mit HTML in Bild? Java Basics - Anfänger-Themen 7
D Classpath Bild kann in .jar nicht geladen werden Java Basics - Anfänger-Themen 2
Anfänger2011 Bild programmieren?! Java Basics - Anfänger-Themen 3
8 Eigenes Bild in email einfügen Java Basics - Anfänger-Themen 1
K JTable Bild einfügen Java Basics - Anfänger-Themen 1
L BufferdImage schwarzes Bild nach zusammenfügen zweier Bilder Java Basics - Anfänger-Themen 8
S Bild in JOptionPane Java Basics - Anfänger-Themen 1
C Abfrage nach einem Bild im Array Java Basics - Anfänger-Themen 9
J Umgebungsvariable Programmfenster zeigt kein Bild an Java Basics - Anfänger-Themen 1
J Bild loopen Java Basics - Anfänger-Themen 6
M JFrame Bild einfügen Java Basics - Anfänger-Themen 3
S Bild bei Kontakt ändern Java Basics - Anfänger-Themen 2
C Erste Schritte Bild holen und speichern Java Basics - Anfänger-Themen 1
D Bild in Frame einfügen Java Basics - Anfänger-Themen 11
D Bild im Applet anzeigen Java Basics - Anfänger-Themen 3
F Bild in ein Runnable Jar File packen (eclipse) Java Basics - Anfänger-Themen 2
M Java-Applet: Bild einbinden (getImage) Java Basics - Anfänger-Themen 0
J Ganzes Bild Java Basics - Anfänger-Themen 4
T GUI anstatt Bild schwarzes Rechteck gespeichert Java Basics - Anfänger-Themen 0
A Bild verschwindet! Wieso?? Java Basics - Anfänger-Themen 2
I Bild aus Bereich laden Java Basics - Anfänger-Themen 3
P Bild in JFrame Titelleiste Java Basics - Anfänger-Themen 7
Y Nach Bild-Upload wird Bild nicht angezeigt Java Basics - Anfänger-Themen 1
M Button mit Bild und Text Java Basics - Anfänger-Themen 2
M JSP-Einfaches Bild anzeigen Java Basics - Anfänger-Themen 4
C Bild ins Frame laden und Objekte drüber legen Java Basics - Anfänger-Themen 1
Sogomn Bild will sich nicht skalieren lassen Java Basics - Anfänger-Themen 1
P Ein Bild für GUI (Java-Editor) Java Basics - Anfänger-Themen 4
D Bild für ein paar Sekunden einblenden und wieder ausblenden Java Basics - Anfänger-Themen 1
E Bild per Verzeichnis/JFileChooser auf JPanel laden Java Basics - Anfänger-Themen 13
S Bild auf eine Position rotieren?! Java Basics - Anfänger-Themen 4
P Bild bearbeiten Java Basics - Anfänger-Themen 9
Z Datenmatrix in Bild verwandeln Java Basics - Anfänger-Themen 4
C Bild verschwinden lassen Java Basics - Anfänger-Themen 7
S Bild Icon aus ID3Tag auslesen Java Basics - Anfänger-Themen 4
E Bild vom FileChooser aus via ImageIcon in DB schreiben Java Basics - Anfänger-Themen 16
D Bild zum Panel hinzufügen Java Basics - Anfänger-Themen 8

Ähnliche Java Themen

Neue Themen


Oben