Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2017
167
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.37 KB | None | 0 0
  1. package Chapter12;
  2.  
  3. import javax.swing.*;
  4. import java.awt.*;
  5. import java.awt.event.ActionEvent;
  6. import java.awt.event.ActionListener;
  7.  
  8. public class TwoButtons {
  9.     JFrame frame;
  10.     JLabel label;
  11.     public static void main(String[] args) {
  12.         TwoButtons gui = new TwoButtons();
  13.         gui.go();
  14.     }
  15.  
  16.     public void go() {
  17.         frame = new JFrame();
  18.         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  19. // создаем кнопку для смены текста
  20.         JButton labelButton = new JButton("Change label");
  21.         labelButton.addActionListener(new LabelListener());
  22. // создаем кнопку для смены цвета круга
  23.         JButton colorButton = new JButton("Change Circle");
  24.         colorButton.addActionListener(new ColorListener());
  25. // создаем тексь
  26.         label = new JLabel("I'm a label");
  27.         MyDrawPanel drawPanel = new MyDrawPanel();
  28. // Заполняем фрейм кнопками и панелями
  29.         frame.getContentPane().add(BorderLayout.SOUTH, colorButton);
  30.         frame.getContentPane().add(BorderLayout.CENTER, drawPanel);
  31.         frame.getContentPane().add(BorderLayout.EAST, labelButton);
  32.         frame.getContentPane().add(BorderLayout.WEST, label);
  33.         frame.setSize(600, 300);
  34.         frame.setVisible(true);
  35.     }
  36. // слушатель для кнопки текста
  37.     class LabelListener implements ActionListener{
  38.         public void actionPerformed (ActionEvent event){
  39.                  if (label.getText().equals("Ouch!"))  label.setText("I'm a label");
  40.                        else  label.setText("Ouch!");
  41.         }
  42.     }
  43. // слуашатель для кнопки круга
  44.     class ColorListener implements ActionListener{
  45.         public void actionPerformed (ActionEvent event){
  46.             frame.repaint();
  47.         }
  48.     }
  49. // рандомный цвет круга
  50.     class MyDrawPanel extends JPanel{
  51.         public void paintComponent(Graphics g){
  52.             g.fillRect(0, 0, this.getWidth(), this.getHeight());
  53.  
  54.             int red = (int) (Math.random() * 255);
  55.             int green = (int) (Math.random() * 255);
  56.             int blue = (int) (Math.random() * 255);
  57.  
  58.             Color randomColor = new Color(red, green, blue);
  59.             g.setColor(randomColor);
  60.             g.fillOval(70, 70, 100, 100);
  61.         }
  62.     }
  63. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement