Wie skaliere ich das Hintergrundbild eines Buttons in java?

2 Antworten

In der Image-Klasse gibt es die Methode getScaledInstance, mit der du das Bild skalieren kannst. Das sollte natürlich erst nach Setzen der bevorzugten Buttongröße durchgeführt werden.

Image scaledImage = yourIcon.getImage().getScaledInstance(yourButton.getWidth(), yourButton.getHeight(), Image.SCALE_SMOOTH);

Um wieder ein ImageIcon zu erhalten, kannst du ein neues ImageIcon-Objekt anlegen und dessen Konstruktor das Image-Objekt überreichen.

yourIcon = new ImageIcon(scaledImage);

Dieses Icon setzt du anschließend für deinen Button (via setIcon).

Image img = new ImageIcon("PFAD ZU BILD").getImage();
Image scaledImg = img.getScaledInstance(250, 250, Image.SCALE_SMOOTH);
JButton ibutton = new JButton(new ImageIcon(scaledImg));