Advertisement
Fhernd

AplicacionSwing5.java

Aug 9th, 2012
139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.16 KB | None | 0 0
  1. import java.awt.BorderLayout;
  2. import java.awt.Color;
  3. import java.awt.event.ActionEvent;
  4. import java.awt.event.ActionListener;
  5. import java.awt.event.WindowAdapter;
  6. import java.awt.event.WindowEvent;
  7. import javax.swing.JFrame;
  8. import javax.swing.JMenu;
  9. import javax.swing.JMenuBar;
  10. import javax.swing.JMenuItem;
  11. import javax.swing.JPanel;
  12. import javax.swing.JTextPane;
  13. import javax.swing.text.DefaultStyledDocument;
  14. import javax.swing.text.Style;
  15. import javax.swing.text.StyleConstants;
  16. import javax.swing.text.StyleContext;
  17.  
  18. public class AplicacionSwing5 extends JPanel implements ActionListener
  19. {
  20.     private Style estiloMorado, estiloGris, estiloCeleste, estiloRojo, estiloAzul;
  21.     private JTextPane texto;
  22.  
  23.     public AplicacionSwing5()
  24.     {
  25.         setLayout( new BorderLayout() );
  26.         JMenuBar menu = new JMenuBar();
  27.         JMenu estilo = new JMenu( "Estilo" );
  28.         menu.add( estilo );
  29.  
  30.         JMenuItem mi = new JMenuItem( "Morado" );
  31.         estilo.add( mi );
  32.         mi.addActionListener( this );
  33.  
  34.         mi = new JMenuItem( "Gris" );
  35.         estilo.add( mi );
  36.         mi.addActionListener( this );
  37.  
  38.         mi = new JMenuItem( "Celeste" );
  39.         estilo.add( mi );
  40.         mi.addActionListener( this );
  41.  
  42.         mi = new JMenuItem( "Rojo" );
  43.         estilo.add( mi );
  44.         mi.addActionListener( this );
  45.  
  46.         mi = new JMenuItem( "Azul" );
  47.         estilo.add( mi );
  48.         mi.addActionListener( this );
  49.  
  50.         add( menu, BorderLayout.NORTH );
  51.  
  52.         StyleContext sc = new StyleContext();
  53.  
  54.         estiloMorado = sc.addStyle( null, null );
  55.         StyleConstants.setForeground( estiloMorado, Color.magenta );
  56.  
  57.         estiloGris = sc.addStyle( null, null);
  58.         StyleConstants.setForeground( estiloGris, Color.gray );
  59.         StyleConstants.setFontSize( estiloGris, 24);
  60.  
  61.         estiloCeleste = sc.addStyle( null, null);
  62.         StyleConstants.setForeground( estiloCeleste, Color.CYAN );
  63.  
  64.         estiloRojo = sc.addStyle( null, null);
  65.         StyleConstants.setForeground( estiloRojo, Color.RED );
  66.  
  67.         estiloAzul = sc.addStyle( null, null);
  68.         StyleConstants.setForeground( estiloAzul, Color.BLUE );
  69.  
  70.         DefaultStyledDocument doc = new DefaultStyledDocument( sc );
  71.  
  72.         texto = new JTextPane( doc );  
  73.         add( texto, BorderLayout.CENTER );
  74.     } // fin del constructor
  75.  
  76.     /**
  77.      * Responde a los eventos de la interfaz del usuario.
  78.      */
  79.     public void actionPerformed( ActionEvent e )
  80.     {
  81.         Style estilo = null;
  82.         String color = (String) e.getActionCommand();
  83.  
  84.         if( color.equals( "Morado" ) )
  85.         {
  86.             estilo = estiloMorado;
  87.         }
  88.         else if( color.equals( "Celeste" ) )
  89.         {
  90.             estilo = estiloCeleste;
  91.         }
  92.         else if( color.equals( "Gris" ) )
  93.         {
  94.             estilo = estiloGris;
  95.         }
  96.         else if( color.equals( "Rojo" ) )
  97.         {
  98.             estilo = estiloRojo;
  99.         }
  100.         else if( color.equals( "Azul" ) )
  101.         {
  102.             estilo = estiloAzul;
  103.         }
  104.  
  105.         texto.setCharacterAttributes( estilo, false );
  106.     } // fin del método actionPerformed
  107.  
  108.     public static void main( String[] args )
  109.     {
  110.         JFrame app = new JFrame( "Tutorial de Java, Swing" );
  111.  
  112.         app.addWindowStateListener( new WindowAdapter()
  113.         {
  114.             public void windowClosing( WindowEvent evt )
  115.             {
  116.                 System.exit( 0 );
  117.             }
  118.         });
  119.  
  120.         app.getContentPane().add( new AplicacionSwing5(), BorderLayout.CENTER );
  121.  
  122.         app.setSize( 300, 180 );
  123.         app.setVisible( true );
  124.     } // fin de main
  125. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement