Difference between revisions of "TopButtonPanel.java"
From EDM2
m (Ak120 moved page Editing Into Java - Part XVI:TopButtonPanel.java to TopButtonPanel.java) |
m |
||
Line 1: | Line 1: | ||
− | |||
<PRE> | <PRE> | ||
import java.awt.*; | import java.awt.*; | ||
Line 73: | Line 72: | ||
} | } | ||
</PRE> | </PRE> | ||
− | + | [[Category:Into Java - Part XVI]] | |
− | [[Category:Java | + |
Revision as of 16:21, 22 February 2018
import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.border.*; public class TopButtonPanel extends JPanel implements ActionListener { private PaintBox owner; private JButton lineButton; private JButton rectButton; private JButton ovalButton; private JButton filledButton; private JLabel shape; private boolean filled = true; public TopButtonPanel (PaintBox o) { owner = o; setLayout(new GridLayout(1, 5)); lineButton = new JButton("Line"); lineButton.addActionListener(this); add(lineButton); rectButton = new JButton("Rectangle"); rectButton.addActionListener(this); add(rectButton); ovalButton = new JButton("Oval"); ovalButton.addActionListener(this); add(ovalButton); filledButton = new JButton("Filled"); filledButton.addActionListener(this); add(filledButton); shape = new JLabel(" Rectangle"); shape.setBackground(Color.white); shape.setForeground(Color.black); shape.setOpaque(true); shape.setBorder(BorderFactory.createBevelBorder( BevelBorder.LOWERED)); add(shape); } public void actionPerformed(ActionEvent e) { Object obj = e.getSource(); if (obj == filledButton) { if (filled) { // filled true filled = false; owner.setFilled(filled); filledButton.setText("Not filled"); } else { filled = true; owner.setFilled(filled); filledButton.setText("Filled"); } /* constants found in PaintPanel are used*/ } else if (obj == lineButton) { owner.setShape(PaintPanel.LINE); shape.setText(" Line"); } else if (obj == rectButton) { owner.setShape(PaintPanel.RECTANGLE); shape.setText(" Rectangle"); } else { // must be ovalButton owner.setShape(PaintPanel.OVAL); shape.setText(" Oval"); } } }