/*
<applet code="Assign2.class" width=350 height=350>
</applet>
*/
import java.awt.event.*;
import javax.swing.*;
import java.awt.*;
public class Assign2 extends JApplet {
private JButton buttons[]=new JButton[5];
private String labels[]= {"Footwear","Kitchen Goods","Stationery","Music","Ladies Wear"};
private JPanel thePanel;
private JMenu editMenu,optionsMenu;
public JMenuItem items[]=new JMenuItem[5];
private JRadioButton options[]= new JRadioButton[3];
private JMenuBar menubar;
private Color colors[]= {Color.yellow,Color.red,Color.magenta,Color.cyan,Color.green};
private int max_bar_width=250;
private int bar_height= 25;
private int bar_width[]= {100,100,100,100,100};
private int hits[]= {200,200,200,200,200};
private double percentage[]={80.00,80.00,80.00,80.00,80.00};
private int x_gap= 15;
private int y_gap=35;
private int gap_between_bars=15;
private String stat= "Applet started!";
private int option=0;
public void init(){
Container pane = getContentPane();
thePanel = new JPanel();
thePanel.setLayout(null);
menubar = new JMenuBar();
setJMenuBar(menubar);
editMenu = new JMenu ("Edit");
menubar.add(editMenu);
baroptionsMenu = new JMenu("Options"); menu
for (int i=0; i <5;i++) {
buttons= new JButton(labels);
buttons.setBackground(colors);
buttons.setSize(115,30);
thePanel.add(buttons);
buttons.addActionListener(new ButtonHandler());
}
buttons[0].setLocation(0,260);
buttons[1].setLocation(115,260);
buttons[2].setLocation(230,260);
buttons[3].setLocation(0,290);
buttons[4].setLocation(115,290);
for (int i=0; i <5;i++) {
items= new JMenuItem(labels);
editMenu.add(items);
items.addActionListener(new MenuHandler());
}
editMenu.add(optionsMenu);
ButtonGroup group = new ButtonGroup();
options[0]=new JRadioButton("Color");
options[0].setSelected(true);
options[0].addActionListener(new OptionHandler());
options[1]=new JRadioButton("Text");
options[1].setSelected(false);
options[1].addActionListener(new OptionHandler());
options[2]=new JRadioButton("Hits");
options[2].setSelected(false);
options[2].addActionListener(new OptionHandler());
group.add(options[0]);
group.add(options[1]);
group.add(options[2]);
optionsMenu.add(options[0]);
optionsMenu.add(options[1]);
optionsMenu.add(options[2]);
pane.add(thePanel);
}
public void paint(Graphics g){
super.paint(g);
calculateChanges();
paintBars(g);
}
public void update(Graphics g){
paint(g);
}
public void paintBars(Graphics g){
Graphics2D g2d = ( Graphics2D ) g;
for (int i=0;i<5;i++) {
g2d.setPaint( colors );
g2d.fill3DRect( x_gap , y_gap+((bar_height+gap_between_bars)*(i)), bar_width, bar_height, true);
g.drawString(hits + ", " + percentage+"%",bar_width+x_gap+10,y_gap + bar_height + ((bar_height+gap_between_bars)*(i)));
}
}
public void calculateChanges(){
int total =0;// initialize total to 0
for(int i=0; i<5; i++) {
bar_width=hits;// set hit=pixel
total += hits; …