JLabel Icon Größe anpassen

LukLuk

Aktives Mitglied
Heho Zusammen,
Ich habe ein JPanel wo ein JLabel, mit einem ImageIcon, drauf ist. Das Problem ist aber nur das sich das Icon nicht der Größe des JLabels also auch des JPanels anpasst.
Meine Frage ist ob es eine Methode gibt wo das Icon immer an die größe des JLabels angepasst wird auch wenn das Fenst vergrößert oder verkleinert wird?

Danke für die Hilfe

LukLuk
 
Du müsstest das Icon bei jedem "resizing" auf die richtige Größe skalieren. Das BufferedImage bietet entsprechende Möglichkeiten.
 
Da gibt's glaube ich mehrere Lösungsmöglichkeiten. Das hängt auch davon ab, was du genau machen willst.
Aber EikeBs Plan gefällt mir auch ganz gut.
 
Ich möchte ein kleines Spielfeld machen. Dieses ist mit einem GridLayout aufgeteilt. Dort sind JPanels angeordnet. Auf den JLabels sind Images( mit setIcon hinzugefügt). Diese Images passen sich aber nicht der größe der JLabels, also auch nicht der größe der JPanels, an. Sie stehen dann in ihrer orginal Größe da und man sieht nur einen kleinen ausschnitt und ich will das die Images ganz zu sehen sind.
 
Und was soll passieren, wenn du die GUI "aufziehst" oder verkleinerst?
Wenn ich das richtig verstanden habe, sollen die Bilder dann immer Mitwachsen/-verkleinern ?
 
Moin,

Java:
Image img = myIcon2.getImage();  
Image newimg = img.getScaledInstance(230, 310,  java.awt.Image.SCALE_SMOOTH);  
newIcon = new ImageIcon(newimg);

Da "draußen" sind so viele Beispiele. Try to use google with english keywords and you get lot of results which help you to resolve your issue :toll:

Oh man ich kann auch nur nach englischen Begriffen suchen, aber richtig english schreiben ist auch nicht meine Stärke 😉 Grammatik halt ^^
 
Hallöle,

ist etwas Älter, aber ich möchte das kurz noch einmal aufrufen.
Ich besitze ein GridbagLayout mit Unmengen JLabels und möchte gerne jedem JLabel ein Bild aus dem Ordner hinzufügen.
Dieses soll 1:1 auf dem JLabel drauf liegen. Keinen Pixel größer, keinen Kleiner. Und wenn man am Fenster herumzieht müsste sich das entsprechend anpassen.

Ich mache das bis dato so:
Java:
Icon icon = new ImageIcon("/resources/demo_DE2.jpg");
			spielfeldlabeltisch.setIcon(icon);

Da ist natürlich nichts mit Größe drin und er klatscht es in Originalgröße drauf.

Ich versuche seit 2 Monaten mehr oder weniger erfolgreich immer mal wieder, das endlich zu lösen.

Kann mir jemand sagen, wie das geht?

Vielen Dank
Lukas 🙂
 

Neue Themen


Zurück
Oben