Как изменить внешний вид Swing применений

Swing Look and Feel

Этот совет Java иллюстрирует метод изменения внешнего вида вашего приложения. Этот код включает все слушателю, что может изменить внешний вид и ощущение-рамка на основе actionCommand объекта ActionEvent. Поддерживаемые Look-и-чувствует являются: металл, Мотив, Windows. Не все L


import javax.swing.*;

import java.awt.*;

import java.awt.event.*;



public class LookAndFeelDemo extends JFrame {



   private String strings[] "Metal""Motif""Windows" };

   private UIManager.LookAndFeelInfo looks[];

   private JRadioButton radio[];

   private ButtonGroup group;

   private JButton button;

   private JLabel label;

   private JComboBox comboBox;



   public LookAndFeelDemo()

   {

      super"Look and Feel Demo" );



      Container c = getContentPane();



      JPanel northPanel = new JPanel();

      northPanel.setLayoutnew GridLayout310) );

      label = new JLabel"This is a Metal look-and-feel",

                          SwingConstants.CENTER );

      northPanel.addlabel );

      button = new JButton"JButton" );

      northPanel.addbutton );

      comboBox = new JComboBoxstrings );

      northPanel.addcomboBox );

     

      c.addnorthPanel, BorderLayout.NORTH );

      

      JPanel southPanel = new JPanel();

      radio = new JRadioButtonstrings.length ];

      group = new ButtonGroup();

      ItemHandler handler = new ItemHandler();

      southPanel.setLayout(

         new GridLayout1, radio.length ) );



      for int i = 0; i < radio.length; i++ ) {

         radionew JRadioButtonstrings] );

         radio].addItemListenerhandler );

         group.addradio] );

         southPanel.addradio] );

      }



      c.addsouthPanel, BorderLayout.SOUTH );



      // get the installed look-and-feel information

      looks = UIManager.getInstalledLookAndFeels();



      setSize300200 );

      show();



      radio].setSelectedtrue );

   }



   private void changeTheLookAndFeelint value )

   {

      try {

         UIManager.setLookAndFeel(

            looksvalue ].getClassName() );

         SwingUtilities.updateComponentTreeUIthis );

      }

      catch Exception e ) {

         e.printStackTrace();

      }

   }



   public static void mainString args[] )

   {

      LookAndFeelDemo dx = new LookAndFeelDemo();



      dx.addWindowListener(

         new WindowAdapter() {

            public void windowClosingWindowEvent e )

            {

               System.exit);

            }

         }

      );

   }



   private class ItemHandler implements ItemListener {

      public void itemStateChangedItemEvent e )

      {

         for int i = 0; i < radio.length; i++ )

            if radio].isSelected() ) {

               label.setText"This is a " +

                  strings" look-and-feel" );

               comboBox.setSelectedIndex);

               changeTheLookAndFeel);

            }

      }

   }

}

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>