Как создать красивые кнопки.

В java на базе Swing имеется метод создания причудливых кнопок в приложениях. Код использует jbutton  в качестве базового, а затем добавляет перевернутое изображение на кнопке. Этот код может быть как использован разработчиками игр для создания анимации в их приложениях, не будем терять время и рассмотрим код.

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
 
public class ButtonTest extends JFrame {
   private JButton plainButton, fancyButton;
 
   public ButtonTest()
   {
      super( "Testing Buttons" );
 
      Container c = getContentPane();
      c.setLayout( new FlowLayout() );
 
      // создаем buttons
      plainButton = new JButton( "Plain Button" );
      c.add( plainButton );
 
      Icon bug1 = new ImageIcon( "bug1.gif" );
      Icon bug2 = new ImageIcon( "bug2.gif" );
      fancyButton = new JButton( "Fancy Button", bug1 );
      fancyButton.setRolloverIcon( bug2 );
      c.add( fancyButton );
 
 // создать экземпляр внутреннего класса ButtonHandler
 // использовать для обработки события кнопки 
      ButtonHandler handler = new ButtonHandler();
      fancyButton.addActionListener( handler );
      plainButton.addActionListener( handler );
 
      setSize( 275, 100 );
      show();
   }
 
   public static void main( String args[] )
   { 
      ButtonTest app = new ButtonTest();
 
      app.addWindowListener(
         new WindowAdapter() {
            public void windowClosing( WindowEvent e )
            {
               System.exit( 0 );
            }
         }
      );
   }
 
   // внутренний класс для обработки событий кнопки
   private class ButtonHandler implements ActionListener {
      public void actionPerformed( ActionEvent e )
      {
         JOptionPane.showMessageDialog( null,
            "You pressed: " + e.getActionCommand() );
      }
   }
}
Обновлено: 07.04.2017 — 15:20

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

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

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.