Usar una imagen como JButton (NetBeans)

Iniciado por Xedrox, 17 Abril 2011, 22:41 PM

0 Miembros y 1 Visitante están viendo este tema.

Xedrox

Creo que el titulo lo dice todo, porbe de agregarle un "Icon" en la propiedades del JButton pero no me gusta como queda, abra alguna forma de poner una imagen (en este caso en redondel.png) y hacerla como un boton? Muchas Gracias Saludos

Castiblanco

#1
Creo que entiendo lo que quieres hacer, no sé :P

Pues leí y me pareció curioso así que decidí hacerlo.

Entonces, creé un botón y le metí una imagen y ya normal... no sé si eso es lo que buscabas.

Código (java) [Seleccionar]

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

public class pruebaImagen extends JFrame implements ActionListener {

ImageIcon imagen = new ImageIcon("imagen.png");
JButton etiqueta = new JButton(imagen);

public pruebaImagen() {
super("Imagen");

getContentPane().add(etiqueta);

etiqueta.addActionListener(this);

this.setSize(300, 150);
}

public static void main(String[] args) {
pruebaImagen p = new pruebaImagen();
p.show(true);

p.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent evt) {
System.exit(0);
}
});
}

    public void ActionListeners(ActionEvent e) {
    }

@Override
public void actionPerformed(ActionEvent arg0) {
System.out.println("bla bla bla bla");

}
}


La imagen en este caso "imagen.png" está en: workspace\nombreProyecto

Supongo que ese código tendrá muchas cosas que no necesita, pero igual estoy aprendiendo hasta ahora y así me quedó, si algo me corrigen lo que vean :P

PD: Yo lo hago en Eclipse, pero hasta donde sé funciona igual en NetBeans...

Saludos y si es eso bien, sino me explicas mejor a ver si entiendo :P

1mpuls0

Hola qué tal.

Pienso que en vez de botón quiere una imagen con un tipo de evento algo así.

Código (java) [Seleccionar]

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.WindowConstants;
import java.awt.FlowLayout;
import javax.swing.ImageIcon;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JOptionPane;

public class PruebaImagenBoton extends JFrame {

private JLabel boton;

    public static void main(String args[]) {
    PruebaImagenBoton pib = new PruebaImagenBoton();
    pib.setVisible(true);
    pib.setLocationRelativeTo(null);
    }

    public PruebaImagenBoton() {
        initComponents();
    }

    private void initComponents() {

        boton = new JLabel();

        setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        setTitle("Prueba Imagen Boton");
        setResizable(false);
        getContentPane().setLayout(new FlowLayout());

        boton.setIcon(new ImageIcon(getClass().getResource("imagen.png")));
        boton.addMouseListener(new MouseAdapter() {
            public void mouseClicked(MouseEvent evt) {
                JOptionPane.showMessageDialog(null,"Hola =)");
            }
        });
        getContentPane().add(boton);

        pack();
    }

}


Saludos.
abc