elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Curso de javascript por TickTack


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Insertar imagnes Image e ImageIcon
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Insertar imagnes Image e ImageIcon  (Leído 12,196 veces)
Mai89

Desconectado Desconectado

Mensajes: 44



Ver Perfil WWW
Insertar imagnes Image e ImageIcon
« en: 8 Abril 2012, 23:23 pm »

Buenas!! Pues tengo un problemilla a la hora de insertar una imagen en una ventana, he estado indagando un poco por algunas páginas web y por el mismo foro. Leyendo he visto que estas dos clases (Image e ImageIcon) serian las que me ayudarían a introducir la imagen en la ventana que ya tengo diseñada, y a la que única mente le falta meterle la imagen para tener el diseño completo. La cosa es, que tengo la imagen ya metida en el jar del proyecto. y por lo que he estado viendo por ahí, podría meterla en un JButton o un JLabel para hacerla aparecer en mi ventana. La verdad es que he probado código, pero como no tengo claro el uso de estas clases y su combinación con los otros componentes  no me ha servido de nada. Así que pido desde aquí una ayudita.
Por lo que he visto hay quien crea una clase expecifica para insertar imagenes, pero no sé, yo estoy con la manía de que se puede hacer de forma más simple sin necesidad de crear más clases. en cualquier caso os dejo el código de lo que tengo hecho:

Código:
import java.awt.image.ImageProducer;
import javax.swing.*; //Importa la clases necesarias para poner los componentes
import java.awt.*; //Importa las clases necesarias para controlar los paneles y las acciones de los componentes.
import javax.swing.ImageIcon;


public class VentanaPrincipal {
   
    private static JFrame ventana;
    private static JPanel pa_norte, pa_sur;

    private static JLabel label_tiprestamo, label_capital, label_tiempo, label_interes;
    private static JComboBox cb_tiprestamo;
    private static JTextField tf_capital, tf_tiempo, tf_interes;

    private static JButton b_cuadro, b_yjava;
    private static ImageIcon ii_yjava;
    private static Image imagen;
   

    //CONSTRUCTOR
    public VentanaPrincipal() {
        crearVentana();
    }

   
    public void crearVentana(){

     
        ventana= new JFrame("EuroPrest");
        ventana.setSize(500, 200);
        ventana.setVisible(true);
        ventana.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        ventana.setLayout(new BorderLayout());

        //Contenedor NORTE y sus Componentes
        pa_norte= new JPanel();
        pa_norte.setLayout(new GridLayout(4,2));
        ventana.add(pa_norte, BorderLayout.NORTH);
       
        label_tiprestamo= new JLabel("Tipo de Prestamo:");
        pa_norte.add(label_tiprestamo);
        cb_tiprestamo= new JComboBox(new String[]{"---Seleccione Prestamo---", "Francés", "Amortización Constante"});
        pa_norte.add(cb_tiprestamo);

        label_capital= new JLabel("Capital Inicial:");
        pa_norte.add(label_capital);
        tf_capital = new JTextField();
        pa_norte.add(tf_capital);

        label_tiempo= new JLabel("Años de la Operación:");
        pa_norte.add(label_tiempo);
        tf_tiempo=new JTextField();
        pa_norte.add(tf_tiempo);

        label_interes=new JLabel("Tipo de Interes:");
        pa_norte.add(label_interes);
        tf_interes=new JTextField();
        pa_norte.add(tf_interes);

        //Contenedor SUR y sus componentes
        pa_sur=new JPanel();
        pa_sur.setLayout(new GridLayout(1,2));
        ventana.add(pa_sur);

        b_cuadro=new JButton("Generar Cuadro");
        b_cuadro.setSize(50, 10);
        pa_sur.add(b_cuadro);
     
        imagen= new Image("logoyJava.png") {};
        b_yjava=new JButton();
        b_yjava.createImage((ImageProducer) imagen);
        pa_sur.add(b_yjava);

       

    }


     public static void main(String[] args) {
        VentanaPrincipal ventPrincipal = new VentanaPrincipal();
    }

}

Los componentes de la ventana están organizados en dos paneles, en el panel sur es donde yo quiero insertar la imagen (a la izquierda), pero de momento no he conseguido nada más que hacer aparecer el botón pero sin la imagen, que se encuentra dentro del mismo proyecto junto con las clases.

Cualquier ayuda me vendrá bien. Gracias de antemano.


En línea



goll9d

Desconectado Desconectado

Mensajes: 43


if (you==this.understand){ world.getGirlfriend() }


Ver Perfil
Re: Insertar imagnes Image e ImageIcon
« Respuesta #1 en: 9 Abril 2012, 03:51 am »

Puedes poner tu imagen en un JLabel

Código
  1.  
  2. b_yjava.setIcon(new ImageIcon(getClass().getResource("y la direccion en la que esta la imagen")));
  3. pa_sur.add(b_yjava);
  4.  
  5.  
Pero como ya has dicho la imagen esta en el proyecto, entonces solo escribe el nombre.extensión
Espero que te sea de ayuda  ;)


« Última modificación: 9 Abril 2012, 03:53 am por goll9d » En línea

Mai89

Desconectado Desconectado

Mensajes: 44



Ver Perfil WWW
Re: Insertar imagnes Image e ImageIcon
« Respuesta #2 en: 9 Abril 2012, 11:06 am »

Muchas Goll9d!! ya lo he conseguido! Lo he intentado primero con un un botón y luego lo he metido en un label.

Con JButton
Código:
        imagen= new ImageIcon("logoyJava.png") ;
        b_yjava=new JButton(imagen);
        pa_sur.add(b_yjava);

Con JLabel
Código:
 imagen= new ImageIcon("logoyJava.png") ;
        label_yjava=new JLabel(imagen);
        pa_sur.add(label_yjava);

La verdad es que se queda más curioso si se inserta en un JLabel, ya que no te salen los bordes del botón ni nada. Muchas gracias otra vez!!
En línea



bels_mike


Desconectado Desconectado

Mensajes: 329



Ver Perfil WWW
Re: Insertar imagnes Image e ImageIcon
« Respuesta #3 en: 15 Abril 2012, 18:14 pm »

hombre también puedes quitar los bordes del botón y demás... y se te queda prácticamente lo mismo en cuanto gráficamente se refiere
En línea

Proteus1989

Desconectado Desconectado

Mensajes: 184



Ver Perfil WWW
Re: Insertar imagnes Image e ImageIcon
« Respuesta #4 en: 16 Abril 2012, 00:43 am »

Para imágenes tienes un componente llamado ImageArea
En línea

Mai89

Desconectado Desconectado

Mensajes: 44



Ver Perfil WWW
Re: Insertar imagnes Image e ImageIcon
« Respuesta #5 en: 4 Junio 2012, 14:26 pm »

Al final conseguí ponerlo en jLabel! Me resultó más fácil. Pero Gracias por el consejo.
En línea



Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
PARPADIAR UN IMAGE
Programación Visual Basic
krisar 2 1,653 Último mensaje 4 Junio 2005, 04:49 am
por Slasher-K
image pro plus
Diseño Gráfico
pardo 0 3,189 Último mensaje 18 Febrero 2010, 19:29 pm
por pardo
¿Slider de imágnes dinámico?
Desarrollo Web
Clavo Oxidado 2 2,481 Último mensaje 24 Noviembre 2014, 18:36 pm
por Clavo Oxidado
Imagnes duplicadas
Multimedia
huerto123 2 14,976 Último mensaje 18 Septiembre 2023, 20:40 pm
por Fernando Morales
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines