// // java1426.java // Copyright (c) 1998, Agustin Froufe // Todos los derechos reservados. // // No se asume ninguna responsabilidad por el uso o alteracion de este // software. Este software se proporciona COMO ES, sin garantia de ningun // tipo de su funcionamiento y en ningun caso sera el autor responsable de // daños o perjuicios que se deriven del mal uso del software, aun cuando // este haya sido notificado de la posibilidad de dicho daño. // // Compilador: javac 1.2 beta 4 // Autor: Agustin Froufe // Creacion: 29-Sep-1998 19:52:14 // //-------------------------------------------------------------------------- // Esta informacion no es necesariamente definitiva y esta sujeta a cambios // que pueden ser incorporados en cualquier momento, sin avisar. //-------------------------------------------------------------------------- /** * Este es la aplicación que utiliza el Look&Feel que se ha creado y que se * ha nombrado "Flecha", porque se ha implementado un botón con dos flechas * a los lados del Texto del botón. Se presenta con el look por defecto * de Java, Metal, y con los botones de selección se puede ir alternando * entre uno y otro. * Solamente se ha implementado uno de los componentes, el Botón, pero la * implementación de los demás es solamente cuestión de paciencia, porque * la forma de hacerlo es semejante, siempre teniendo en cuenta las * particularidades de funcionamiento de cada componente que se vaya a * recrear. */ import java.awt.*; import java.awt.event.*; import javax.swing.*; public class java1426 extends JPanel { public java1426() { // Se crea el botón que vamos a cambiar de apariencia JButton boton = new JButton( "Boton Ej." ); ActionListener miListener = new ActionListener() { public void actionPerformed( ActionEvent evt ) { String look = null; // Aquí se controla el Look&Feel presente if( evt.getActionCommand().equals( "Flecha" ) ) { look = "flecha.FlechaLookAndFeel"; } else { look = "javax.swing.plaf.metal.MetalLookAndFeel"; } try { UIManager.setLookAndFeel( look ); SwingUtilities.updateComponentTreeUI( java1426.this ); java1426.this.validate(); } catch( Exception e ) { System.err.println( "No se puede cambiar al LookAndFeel: "+look ); } } }; // Grupo de botones que va a permitir alternar entre un Look y // otro ButtonGroup grupo = new ButtonGroup(); JRadioButton botonMetal = new JRadioButton( "Metal" ); botonMetal.setSelected( true ); botonMetal.addActionListener( miListener ); grupo.add( botonMetal ); JRadioButton botonFlecha = new JRadioButton( "Flecha" ); botonFlecha.addActionListener( miListener ); grupo.add( botonFlecha ); add( boton ); add( botonMetal ); add( botonFlecha ); } public static void main( String args[] ) { JFrame ventana = new JFrame( "Tutorial de Java, Swing" ); ventana.addWindowListener( new WindowAdapter() { public void windowClosing( WindowEvent evt ) { System.exit( 0 ); } }); ventana.getContentPane().add( new java1426(),BorderLayout.CENTER ); ventana.setSize( 300,100 ); ventana.show(); } } //------------------------------------------ Final del fichero java1426.java