Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at ModifiedStyleOptionsPanel$SayingListener.actionPer formed(ModifiedStyleOptionsPanel.java:70)
at javax.swing.AbstractButton.fireActionPerformed(Abs tractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed (AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed (DefaultButtonModel.java:402)
at javax.swing.JToggleButton$ToggleButtonModel.setPre ssed(JToggleButton.java:308)
at javax.swing.plaf.basic.BasicButtonListener.mouseRe leased(BasicButtonListener.java:252)
at java.awt.Component.processMouseEvent(Component.jav a:6505)
at javax.swing.JComponent.processMouseEvent(JComponen t.java:3321)
at java.awt.Component.processEvent(Component.java:627 0)
at java.awt.Container.processEvent(Container.java:222 9)
at java.awt.Component.dispatchEventImpl(Component.jav a:4861)
at java.awt.Container.dispatchEventImpl(Container.jav a:2287)
at java.awt.Component.dispatchEvent(Component.java:46 87)
at java.awt.LightweightDispatcher.retargetMouseEvent( Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(C ontainer.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Conta iner.java:4422)
at java.awt.Container.dispatchEventImpl(Container.jav a:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2719 )
at java.awt.Component.dispatchEvent(Component.java:46 87)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.j ava:735)
at java.awt.EventQueue.access$200(EventQueue.java:103 )
at java.awt.EventQueue$3.run(EventQueue.java:694)
at java.awt.EventQueue$3.run(EventQueue.java:692)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPri vilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPri vilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:708)
at java.awt.EventQueue$4.run(EventQueue.java:706)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPri vilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java: 705)
at java.awt.EventDispatchThread.pumpOneEventForFilter s(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(E ventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarch y(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispa tchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispa tchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThre ad.java:91)
Program Written method is:
//************************************************** ******************
// StyleOptionsPanel.java Author: Lewis/Loftus
//
// Demonstrates the use of check boxes.
//************************************************** ******************
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.EventObject;
public class ModifiedStyleOptionsPanel extends JPanel
{
private JLabel saying;
private JCheckBox bold, italic;
private JRadioButton rb1, rb2;
//-----------------------------------------------------------------
// Sets up a panel with a label and some check boxes that
// control the style of the label's font.
//-----------------------------------------------------------------
public ModifiedStyleOptionsPanel()
{
saying = new JLabel ("Say it with style!");
saying.setFont (new Font ("Helvetica", Font.PLAIN, 36));
bold = new JCheckBox ("Bold");
bold.setBackground (Color.cyan);
italic = new JCheckBox ("Italic");
italic.setBackground (Color.cyan);
StyleListener listener = new StyleListener();
bold.addItemListener (listener);
italic.addItemListener (listener);
JRadioButton rb1 = new JRadioButton("Set to red!");
JRadioButton rb2 = new JRadioButton("Set to green!");
rb1.setBackground (Color.cyan);
rb2.setBackground (Color.cyan);
ButtonGroup group = new ButtonGroup();
group.add(rb1);
group.add(rb2);
SayingListener sm = new SayingListener();
rb1.addActionListener (sm);
rb2.addActionListener (sm);
add(rb1);
add(rb2);
add (saying);
add (bold);
add (italic);
setBackground (Color.cyan);
setPreferredSize (new Dimension(300, 100));
}
private class SayingListener implements ActionListener
{
public void actionPerformed (ActionEvent e)
{
if ( rb1.isSelected()){
saying.setForeground(Color.red);}
else if (rb2.isSelected()){
saying.setForeground(Color.yellow);}
}
}
//************************************************** ***************
// Represents the listener for both check boxes.
//************************************************** ***************
private class StyleListener implements ItemListener
{
//--------------------------------------------------------------
// Updates the style of the label font style.
//--------------------------------------------------------------
public void itemStateChanged (ItemEvent event)
{
int style = Font.PLAIN;
if (bold.isSelected())
style = Font.BOLD;
if (italic.isSelected())
style += Font.ITALIC;
saying.setFont (new Font ("Helvetica", style, 36));
}
}
}
Driver class is:
//************************************************** ******************
// StyleOptions.java Author: Lewis/Loftus
//
// Demonstrates the use of check boxes.
//************************************************** ******************
import javax.swing.JFrame;
public class ModifiedStyleOptions
{
//-----------------------------------------------------------------
// Creates and presents the program frame.
//-----------------------------------------------------------------
public static void main (String[] args)
{
JFrame frame = new JFrame ("Style Options");
frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
ModifiedStyleOptionsPanel panel = new ModifiedStyleOptionsPanel();
frame.getContentPane().add (panel);
frame.pack();
frame.setVisible(true);
}
}
--- Update ---
Can any one help me out plz.....! whats wrong with my code ? it occurred in JGrasp editor.
Comments will be appreciated