Java
Home

Exemplo de JComboList, List e Icon

 

/*
* Main.java
*
* Created on 19 de Fevereiro de 2007, 10:49
*/

package jcombo_jlist;


import java.awt.*;
import java.awt.event.*;

import javax.swing.*;
import javax.swing.event.*;

/**
*
* @author adrw
*/

public class Main extends JFrame {

   private JComboBox imagesComboBox;
   private JList colorList;
   private Container container;

   private String names[] =
   { "spidy[1].gif", "accessibility[1].gif", "LOGO_FULL[2].gif" };

   private JLabel label1;

   private Icon icons[] = {
      new ImageIcon( names[0] ),
      new ImageIcon( names[1] ),
      new ImageIcon( names[2] )
   };


   private String colorNames[] = { "Preto", "Azul", "Cinza" };

   private Color colors[] = { Color.BLACK, Color.blue, Color.cyan };


   /** Creates a new instance of Main */
   public Main() {

      super("Testando Combo box e list");

      container = getContentPane();
      container.setLayout( new FlowLayout() );

      imagesComboBox = new JComboBox( names );
      imagesComboBox.setMaximumRowCount(3);

      imagesComboBox.addItemListener (

      new ItemListener()
      {
         public void itemStateChanged( ItemEvent event )
         {
            if ( event.getStateChange() == ItemEvent.SELECTED )
            {
               label1.setIcon( icons[ imagesComboBox.getSelectedIndex() ] );
            }
         }
      }
      );

      container.add( imagesComboBox );

      label1 = new JLabel( icons[0] );
      container.add( label1 );

      colorList = new JList( colorNames );
      colorList.setVisibleRowCount( 3 );

      colorList.setSelectionMode( ListSelectionModel.SINGLE_SELECTION );

      container.add( new JScrollPane( colorList ) );

      colorList.addListSelectionListener(

      new ListSelectionListener()
      {
         public void valueChanged( ListSelectionEvent event )
         {
            container.setBackground( colors[ colorList.getSelectedIndex() ] );
         }
      }
      );

      setSize( 350, 100 );
      setVisible( true );
   }

   /**
   * @param args the command line arguments
   */
   public static void main(String[] args) {

      Main app = new Main();

      app.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );

   }

}