rendered paste bodyimport javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class QuoteGUI
{
private final int WIDTH = 300, HEIGHT = 100;
private JPanel primary;
private JLabel quote;
private JRadioButton comedy, philosophy, carpentry;
private String comedyQuote = "Take my wife, please.";
private String philosophyQuote = "I think, therefore I am.";
private String carpentryQuote = "Measure twice. Cut once.";
public QuoteGUI()
{
quote = new JLabel (comedyQuote);
quote.setFont (new Font ("Helvetica", Font.BOLD, 24));
comedy = new JRadioButton ("Comedy", true);
comedy.setBackground (Color.green);
philosophy = new JRadioButton ("Philosophy");
philosophy.setBackground (Color.green);
carpentry = new JRadioButton ("Carpentry");
carpentry.setBackground (Color.green);
ButtonGroup group = new ButtonGroup();
group.add (comedy);
group.add (philosophy);
group.add (carpentry);
QuoteListener listener = new QuoteListener();
comedy.addActionListener(listener);
philosophy.addActionListener(listener);
carpentry.addActionListener(listener);
primary = new JPanel();
primary.add (quote);
primary.add (comedy);
primary.add (philosophy);
primary.add (carpentry);
primary.setBackground (Color.green);
primary.setPreferredSize (new Dimension(WIDTH, HEIGHT));
}
public JPanel getPanel()
{
return primary;
}
private class QuoteListener implements ActionListener
{
public void actionPerformed (ActionEvent event)
{
Object source = event.getSource();
if (source == comedy)
quote.setText(comedyQuote);
else
if(source == philosophy)
quote.setText (philosophyQuote);
else
quote.setText(carpentryQuote);
}
}
}
import javax.swing.*;
public class QuoteOptions
{
public static void main(String[] args)
{
JFrame quoteFrame = new JFrame ("Quote Options");
quoteFrame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
QuoteGUI gui = new QuoteGUI();
quoteFrame.getContentPane().add (gui.getPanel());
quoteFrame.pack();
quoteFrame.show();
}
}