1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

[Java]Bildbetrachter programmieren

Discussion in 'Programmieren' started by kroenefl, Jul 22, 2011.

Thread Status:
Not open for further replies.
  1. kroenefl

    kroenefl Kbyte

    Hallo alle zusammen,
    Ich programmiere zur Zeit einen Bildbetrachter mit Java.
    Ich lasse das Programm einen Ordner nach kompatiblen Dateien durchsuchen, die ich dann anzeigen will, unterstützt werden sollen .tif Dateien und .pdf.
    Ich lasse die PDFs mit der PDF-Renderer Bibliothek anzeigen, die ein "pagePanel" stellt, mit dem die PDFs schnell und einfach angezeigt werden können. Das "pagePanel" wird von "jPanel" abgeleitet.
    Mein Problem ist allerdings die Anzeige der Bilddateien.
    Ich hatte anfänglich ein jLabel, dass diese Bilddateien als ImageIcons angezeigt hat.
    Nun wollte ich allerdings das "pagePanel" als "Hauptfenster", sodass das jLabel nur dann eingeblendet werden soll, wenn es auch wirklich gebraucht wird.
    Hier kommen wir zum Problem, denn ich bekomme zwar keine Fehlermeldung, aber es wird kein jLabel sichtbar.
    Die betroffene Stelle ist diese:
    Code:
    if(!path.toString().endsWith(".pdf")){   //Falls Datei nicht auf ".pdf" endet -> .jpg etc
                    Image picture;
                    File file = new File(path.toString()); //path ist der vollständige Dateipfad der Bilder(Objekt)
                    JLabel label = new JLabel();
                    Toolkit tk = Toolkit.getDefaultToolkit();
                    picture = tk.getImage(path.toString()); //Bilder laden
                    ImageIcon icon = new ImageIcon(picture); 
                    label.setIcon(icon);
                    pagePanel1.add(label); //das Label dem pagePanel hinzufügen
                    label.setVisible(true);
    
    Es wäre wirklich super wenn mir jemand einen Tip geben könnte, ich sitze jetzt schon relativ lange dran...
     
  2. VB-Coder

    VB-Coder Megabyte

    Versuch mal den Code mit FindBugs zu checken. Eventuell wirst du da schon fündig. http://findbugs.sourceforge.net/

    Da dein Code hier nur ein Auszug ist, ist es schwirig was dazu zu sagen. Was mir jedoch auffällt ist die Fehlende } Klammer am Ende. Aber eventuell geht der Code ja noch weiter und die Klammer kommt weiter unten. Wer weiß das schon.... ;)
     
  3. kroenefl

    kroenefl Kbyte

    Vielen Dank für deine Antwort!
    Habe jetzt herausgefunden, dass das PagePanel gar nicht wirklich fähig ist, die Bilder anzuzeigen, daran lag es, also wer dasselbe Problem hat nimmt lieber ein anderes Objekt dafür :-)
    Die Klammer war im Projekt enthalten :-D
     
Thread Status:
Not open for further replies.

Share This Page