Ich möchte ein Bild als Schaltfläche in Java verwenden, und ich habe versucht, dies zu tun:
BufferedImage buttonIcon = ImageIO.read(new File("buttonIconPath"));
button = new JButton(new ImageIcon(buttonIcon));
Aber dies zeigt immer noch die eigentliche Schaltfläche hinter dem Bild, ich möchte nur, dass das Bild als Schaltfläche fungiert, wie kann ich das tun?
1: Entnommen aus der Lösung, die der Frage von @3sdmx hinzugefügt wurde
Das hat irgendwie funktioniert, aber es gibt immer noch eine Art Hintergrund von der Schaltfläche selbst, gibt es eine Möglichkeit, sie vollständig zu entfernen? Oder transparent machen?
– 3sdmx
4. Februar 2011 um 14:55 Uhr
Sie können versuchen, den Hintergrund auf eine andere Farbe oder transparent einzustellen. Hat Ihr Bild Transparenz oder ist es ein solides Quadrat?
– jzd
4. Februar 2011 um 18:14 Uhr
ttheolh
Ein Vorschlag wäre, das Bild als Label festzulegen und dem Label einen Maus-Listener hinzuzufügen, um Klicks zu erkennen.
Beispiel:
ImageIcon icon = ...;
JLabel button = new JLabel(icon);
button.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
... handle the click ...
}
});