# Working with Panel in Java



## Adam Cruge (Jan 1, 2009)

I have written a Java code.The following is my code...


import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import javax.swing.*;


public class Game extends Frame{
    public Panel x;
    Panel pi,pi1,pi2,pi3,pi4;
    public Game(){
      pi=new Panel();
      add(pi);
      pi1= new Panel(new GridLayout(4,0));
      pi2= new Panel();
      pi3= new Panel(new GridLayout(4,4));
      pi4= new Panel();
      Label l3[][]=new Label[4][4];
      x=pi1;
      JButton b1=new JButton("       Play        ");
      JButton b2=new JButton("     Objective     ");
      JButton b3=new JButton("    Instruction    ");
      JButton b4=new JButton("       Exit        ");
      pi.add(pi1);
      pi1.add(b1);
      pi1.add(b2);
      pi1.add(b3);
      pi1.add(b4);
      b1.addActionListener(new MyAction(this));
      b2.addActionListener(new MyAction(this));
      b3.addActionListener(new MyAction(this));
      b4.addActionListener(new MyAction(this));
      Label l1= new Label("This is a puzzle game.You have to arrange the numbers in proper order...");
      pi2.add(l1);
      JButton b5= new JButton("       Back        ");
      pi2.add(b5);
      b5.addActionListener(new MyAction(this));
      Label l2= new Label("You should use four arrow kyes to move the numbers...");
      pi4.add(l2);
      pi4.add(b5);
      Panel p[][]= new Panel[4][4];
      for(int i=0;i<4;i++)
      {
        for(int j=0;j<4;j++)
        {
          p_[j]=new Panel();
          pi3.add(p[j]);
          p[j].addKeyListener(new MyKeyAdapter(this));
        }
      }
      for(int i=0;i<4;i++)
      {
        for(int j=0;j<4;j++)
        {
          l3[j]=new Label(""+i);
        }
      }
      p[0][0].add(l3[0][0]);
      p[0][1].add(l3[0][3]);
      p[0][2].add(l3[3][2]);
      p[0][3].add(l3[1][2]);
      p[1][0].add(l3[1][3]);
      p[1][1].add(l3[2][1]);
      p[1][2].add(l3[0][1]);
      p[1][3].add(l3[2][2]);
      p[2][0].add(l3[3][1]);
      p[2][1].add(l3[0][2]);
      p[2][2].add(l3[1][1]);
      p[2][3].add(l3[3][0]);
      p[3][0].add(l3[2][3]);
      p[3][1].add(l3[2][0]);
      p[3][2].add(l3[1][0]);
      addWindowListener(new MyWindowAdapter());
    }
    public static void main(String args[])
    {
      Game g = new Game();
      g.setSize(new Dimension(300, 200));
      g.setTitle("A Puzzle Game");
      g.setLayout(new FlowLayout(FlowLayout.CENTER));
      g.setVisible(true);
    }
}



class MyWindowAdapter extends WindowAdapter{
    public void windowClosing(WindowEvent we)
    {
      System.exit(0);
    }
}


class MyAction implements ActionListener{
    Game g;
    public MyAction(Game g)
    {
      this.g=g;
    }
    public void actionPerformed(ActionEvent ae)
    {
      String str=ae.getActionCommand();
      if(str.equals("Objective"))
      {
        g.pi.remove(g.x);
        g.pi.add(g.pi2);
        g.pi.x=g.pi2;
      }
      if(str.equals("Instruction"))
      {
        g.pi.remove(g.x);
        g.pi.add(g.pi4);
        g.pi.x=g.pi4;
      }
      if(str.equals("Exit"))
      {
        System.exit(0);
      }
    }
}


class MyKeyAdapter extends KeyAdapter{
    Game g;
    public MyKeyAdapter(Game g)
    {
      this.g=g;
    }
    public void keyTyped(KeyEvent ke)
    {
    }
}


This code is perfect when actionPerformed function in MyAction class is kept empty...
But I have to write something to obtain the desired result...I want to remove the Panels pi2,pi4 etc when buttons "Objective" or "Instructions" are pressed...
Please help ..._


----------



## QwertyManiac (Jan 2, 2009)

Your Button's constructor had its name padded with spaces, so you probably have to feed the same string into the condition.

This will work (removes and stuff), but I'm not sure its what you asked for:

```
[COLOR=#008000][B]import[/B][/COLOR] [COLOR=#0000ff][B]java.awt.*[/B][/COLOR][COLOR=#666666];[/COLOR]
[COLOR=#008000][B]import[/B][/COLOR] [COLOR=#0000ff][B]java.awt.event.*[/B][/COLOR][COLOR=#666666];[/COLOR]
[COLOR=#008000][B]import[/B][/COLOR] [COLOR=#0000ff][B]java.applet.*[/B][/COLOR][COLOR=#666666];[/COLOR]
[COLOR=#008000][B]import[/B][/COLOR] [COLOR=#0000ff][B]javax.swing.*[/B][/COLOR][COLOR=#666666];[/COLOR]


[COLOR=#008000][B]public[/B][/COLOR] [COLOR=#008000][B]class[/B][/COLOR] [COLOR=#0000ff][B]Game[/B][/COLOR] [COLOR=#008000][B]extends[/B][/COLOR] Frame[COLOR=#666666]{[/COLOR]
    [COLOR=#008000][B]public[/B][/COLOR] Panel x[COLOR=#666666];[/COLOR]
    Panel pi[COLOR=#666666],[/COLOR]pi1[COLOR=#666666],[/COLOR]pi2[COLOR=#666666],[/COLOR]pi3[COLOR=#666666],[/COLOR]pi4[COLOR=#666666];[/COLOR]
    [COLOR=#008000][B]public[/B][/COLOR] [COLOR=#0000ff]Game[/COLOR][COLOR=#666666](){[/COLOR]
        pi[COLOR=#666666]=[/COLOR][COLOR=#008000][B]new[/B][/COLOR] Panel[COLOR=#666666]();[/COLOR]
        add[COLOR=#666666]([/COLOR]pi[COLOR=#666666]);[/COLOR]
        pi1[COLOR=#666666]=[/COLOR] [COLOR=#008000][B]new[/B][/COLOR] Panel[COLOR=#666666]([/COLOR][COLOR=#008000][B]new[/B][/COLOR] GridLayout[COLOR=#666666]([/COLOR][COLOR=#666666]4[/COLOR][COLOR=#666666],[/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666]));[/COLOR]
        pi2[COLOR=#666666]=[/COLOR] [COLOR=#008000][B]new[/B][/COLOR] Panel[COLOR=#666666]();[/COLOR]
        pi3[COLOR=#666666]=[/COLOR] [COLOR=#008000][B]new[/B][/COLOR] Panel[COLOR=#666666]([/COLOR][COLOR=#008000][B]new[/B][/COLOR] GridLayout[COLOR=#666666]([/COLOR][COLOR=#666666]4[/COLOR][COLOR=#666666],[/COLOR][COLOR=#666666]4[/COLOR][COLOR=#666666]));[/COLOR]
        pi4[COLOR=#666666]=[/COLOR] [COLOR=#008000][B]new[/B][/COLOR] Panel[COLOR=#666666]();[/COLOR]
        Label l3[COLOR=#666666][][]=[/COLOR][COLOR=#008000][B]new[/B][/COLOR] Label[COLOR=#666666][[/COLOR][COLOR=#666666]4[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]4[/COLOR][COLOR=#666666]];[/COLOR]
        x[COLOR=#666666]=[/COLOR]pi1[COLOR=#666666];[/COLOR]
        JButton b1[COLOR=#666666]=[/COLOR][COLOR=#008000][B]new[/B][/COLOR] JButton[COLOR=#666666]([/COLOR][COLOR=#ba2121]" Play "[/COLOR][COLOR=#666666]);[/COLOR]
        JButton b2[COLOR=#666666]=[/COLOR][COLOR=#008000][B]new[/B][/COLOR] JButton[COLOR=#666666]([/COLOR][COLOR=#ba2121]" Objective "[/COLOR][COLOR=#666666]);[/COLOR]
        JButton b3[COLOR=#666666]=[/COLOR][COLOR=#008000][B]new[/B][/COLOR] JButton[COLOR=#666666]([/COLOR][COLOR=#ba2121]" Instruction "[/COLOR][COLOR=#666666]);[/COLOR]
        JButton b4[COLOR=#666666]=[/COLOR][COLOR=#008000][B]new[/B][/COLOR] JButton[COLOR=#666666]([/COLOR][COLOR=#ba2121]" Exit "[/COLOR][COLOR=#666666]);[/COLOR]
        pi[COLOR=#666666].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]pi1[COLOR=#666666]);[/COLOR]
        pi1[COLOR=#666666].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]b1[COLOR=#666666]);[/COLOR]
        pi1[COLOR=#666666].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]b2[COLOR=#666666]);[/COLOR]
        pi1[COLOR=#666666].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]b3[COLOR=#666666]);[/COLOR]
        pi1[COLOR=#666666].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]b4[COLOR=#666666]);[/COLOR]
        b1[COLOR=#666666].[/COLOR][COLOR=#7d9029]addActionListener[/COLOR][COLOR=#666666]([/COLOR][COLOR=#008000][B]new[/B][/COLOR] MyAction[COLOR=#666666]([/COLOR][COLOR=#008000][B]this[/B][/COLOR][COLOR=#666666]));[/COLOR]
        b2[COLOR=#666666].[/COLOR][COLOR=#7d9029]addActionListener[/COLOR][COLOR=#666666]([/COLOR][COLOR=#008000][B]new[/B][/COLOR] MyAction[COLOR=#666666]([/COLOR][COLOR=#008000][B]this[/B][/COLOR][COLOR=#666666]));[/COLOR]
        b3[COLOR=#666666].[/COLOR][COLOR=#7d9029]addActionListener[/COLOR][COLOR=#666666]([/COLOR][COLOR=#008000][B]new[/B][/COLOR] MyAction[COLOR=#666666]([/COLOR][COLOR=#008000][B]this[/B][/COLOR][COLOR=#666666]));[/COLOR]
        b4[COLOR=#666666].[/COLOR][COLOR=#7d9029]addActionListener[/COLOR][COLOR=#666666]([/COLOR][COLOR=#008000][B]new[/B][/COLOR] MyAction[COLOR=#666666]([/COLOR][COLOR=#008000][B]this[/B][/COLOR][COLOR=#666666]));[/COLOR]
        Label l1[COLOR=#666666]=[/COLOR] [COLOR=#008000][B]new[/B][/COLOR] Label[COLOR=#666666]([/COLOR][COLOR=#ba2121]"This is a puzzle game.You have to arrange the numbers in proper order..."[/COLOR][COLOR=#666666]);[/COLOR]
        pi2[COLOR=#666666].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]l1[COLOR=#666666]);[/COLOR]
        JButton b5[COLOR=#666666]=[/COLOR] [COLOR=#008000][B]new[/B][/COLOR] JButton[COLOR=#666666]([/COLOR][COLOR=#ba2121]" Back "[/COLOR][COLOR=#666666]);[/COLOR]
        pi2[COLOR=#666666].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]b5[COLOR=#666666]);[/COLOR]
        b5[COLOR=#666666].[/COLOR][COLOR=#7d9029]addActionListener[/COLOR][COLOR=#666666]([/COLOR][COLOR=#008000][B]new[/B][/COLOR] MyAction[COLOR=#666666]([/COLOR][COLOR=#008000][B]this[/B][/COLOR][COLOR=#666666]));[/COLOR]
        Label l2[COLOR=#666666]=[/COLOR] [COLOR=#008000][B]new[/B][/COLOR] Label[COLOR=#666666]([/COLOR][COLOR=#ba2121]"You should use four arrow kyes to move the numbers..."[/COLOR][COLOR=#666666]);[/COLOR]
        pi4[COLOR=#666666].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]l2[COLOR=#666666]);[/COLOR]
        pi4[COLOR=#666666].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]b5[COLOR=#666666]);[/COLOR]
        Panel p[COLOR=#666666][][]=[/COLOR] [COLOR=#008000][B]new[/B][/COLOR] Panel[COLOR=#666666][[/COLOR][COLOR=#666666]4[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]4[/COLOR][COLOR=#666666]];[/COLOR]
        [COLOR=#008000][B]for[/B][/COLOR][COLOR=#666666]([/COLOR][COLOR=#b00040]int[/COLOR] i[COLOR=#666666]=[/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666];[/COLOR]i[COLOR=#666666]<[/COLOR][COLOR=#666666]4[/COLOR][COLOR=#666666];[/COLOR]i[COLOR=#666666]++)[/COLOR]
        [COLOR=#666666]{[/COLOR]
            [COLOR=#008000][B]for[/B][/COLOR][COLOR=#666666]([/COLOR][COLOR=#b00040]int[/COLOR] j[COLOR=#666666]=[/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666];[/COLOR]j[COLOR=#666666]<[/COLOR][COLOR=#666666]4[/COLOR][COLOR=#666666];[/COLOR]j[COLOR=#666666]++)[/COLOR]
            [COLOR=#666666]{[/COLOR]
                p[COLOR=#666666][[/COLOR]i[COLOR=#666666]][[/COLOR]j[COLOR=#666666]]=[/COLOR][COLOR=#008000][B]new[/B][/COLOR] Panel[COLOR=#666666]();[/COLOR]
                pi3[COLOR=#666666].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]p[COLOR=#666666][[/COLOR]i[COLOR=#666666]][[/COLOR]j[COLOR=#666666]]);[/COLOR]
                p[COLOR=#666666][[/COLOR]i[COLOR=#666666]][[/COLOR]j[COLOR=#666666]].[/COLOR][COLOR=#7d9029]addKeyListener[/COLOR][COLOR=#666666]([/COLOR][COLOR=#008000][B]new[/B][/COLOR] MyKeyAdapter[COLOR=#666666]([/COLOR][COLOR=#008000][B]this[/B][/COLOR][COLOR=#666666]));[/COLOR]
            [COLOR=#666666]}[/COLOR]
        [COLOR=#666666]}[/COLOR]
        [COLOR=#008000][B]for[/B][/COLOR][COLOR=#666666]([/COLOR][COLOR=#b00040]int[/COLOR] i[COLOR=#666666]=[/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666];[/COLOR]i[COLOR=#666666]<[/COLOR][COLOR=#666666]4[/COLOR][COLOR=#666666];[/COLOR]i[COLOR=#666666]++)[/COLOR]
        [COLOR=#666666]{[/COLOR]
            [COLOR=#008000][B]for[/B][/COLOR][COLOR=#666666]([/COLOR][COLOR=#b00040]int[/COLOR] j[COLOR=#666666]=[/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666];[/COLOR]j[COLOR=#666666]<[/COLOR][COLOR=#666666]4[/COLOR][COLOR=#666666];[/COLOR]j[COLOR=#666666]++)[/COLOR]
            [COLOR=#666666]{[/COLOR]
                l3[COLOR=#666666][[/COLOR]i[COLOR=#666666]][[/COLOR]j[COLOR=#666666]]=[/COLOR][COLOR=#008000][B]new[/B][/COLOR] Label[COLOR=#666666]([/COLOR][COLOR=#ba2121]""[/COLOR][COLOR=#666666]+[/COLOR]i[COLOR=#666666]);[/COLOR]
            [COLOR=#666666]}[/COLOR]
        [COLOR=#666666]}[/COLOR]
        p[COLOR=#666666][[/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666]].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]l3[COLOR=#666666][[/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666]]);[/COLOR]
        p[COLOR=#666666][[/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]1[/COLOR][COLOR=#666666]].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]l3[COLOR=#666666][[/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]3[/COLOR][COLOR=#666666]]);[/COLOR]
        p[COLOR=#666666][[/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]2[/COLOR][COLOR=#666666]].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]l3[COLOR=#666666][[/COLOR][COLOR=#666666]3[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]2[/COLOR][COLOR=#666666]]);[/COLOR]
        p[COLOR=#666666][[/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]3[/COLOR][COLOR=#666666]].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]l3[COLOR=#666666][[/COLOR][COLOR=#666666]1[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]2[/COLOR][COLOR=#666666]]);[/COLOR]
        p[COLOR=#666666][[/COLOR][COLOR=#666666]1[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666]].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]l3[COLOR=#666666][[/COLOR][COLOR=#666666]1[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]3[/COLOR][COLOR=#666666]]);[/COLOR]
        p[COLOR=#666666][[/COLOR][COLOR=#666666]1[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]1[/COLOR][COLOR=#666666]].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]l3[COLOR=#666666][[/COLOR][COLOR=#666666]2[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]1[/COLOR][COLOR=#666666]]);[/COLOR]
        p[COLOR=#666666][[/COLOR][COLOR=#666666]1[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]2[/COLOR][COLOR=#666666]].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]l3[COLOR=#666666][[/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]1[/COLOR][COLOR=#666666]]);[/COLOR]
        p[COLOR=#666666][[/COLOR][COLOR=#666666]1[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]3[/COLOR][COLOR=#666666]].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]l3[COLOR=#666666][[/COLOR][COLOR=#666666]2[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]2[/COLOR][COLOR=#666666]]);[/COLOR]
        p[COLOR=#666666][[/COLOR][COLOR=#666666]2[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666]].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]l3[COLOR=#666666][[/COLOR][COLOR=#666666]3[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]1[/COLOR][COLOR=#666666]]);[/COLOR]
        p[COLOR=#666666][[/COLOR][COLOR=#666666]2[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]1[/COLOR][COLOR=#666666]].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]l3[COLOR=#666666][[/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]2[/COLOR][COLOR=#666666]]);[/COLOR]
        p[COLOR=#666666][[/COLOR][COLOR=#666666]2[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]2[/COLOR][COLOR=#666666]].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]l3[COLOR=#666666][[/COLOR][COLOR=#666666]1[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]1[/COLOR][COLOR=#666666]]);[/COLOR]
        p[COLOR=#666666][[/COLOR][COLOR=#666666]2[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]3[/COLOR][COLOR=#666666]].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]l3[COLOR=#666666][[/COLOR][COLOR=#666666]3[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666]]);[/COLOR]
        p[COLOR=#666666][[/COLOR][COLOR=#666666]3[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666]].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]l3[COLOR=#666666][[/COLOR][COLOR=#666666]2[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]3[/COLOR][COLOR=#666666]]);[/COLOR]
        p[COLOR=#666666][[/COLOR][COLOR=#666666]3[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]1[/COLOR][COLOR=#666666]].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]l3[COLOR=#666666][[/COLOR][COLOR=#666666]2[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666]]);[/COLOR]
        p[COLOR=#666666][[/COLOR][COLOR=#666666]3[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]2[/COLOR][COLOR=#666666]].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]l3[COLOR=#666666][[/COLOR][COLOR=#666666]1[/COLOR][COLOR=#666666]][[/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666]]);[/COLOR]
        addWindowListener[COLOR=#666666]([/COLOR][COLOR=#008000][B]new[/B][/COLOR] MyWindowAdapter[COLOR=#666666]());[/COLOR]
    [COLOR=#666666]}[/COLOR]
    [COLOR=#008000][B]public[/B][/COLOR] [COLOR=#008000][B]static[/B][/COLOR] [COLOR=#b00040]void[/COLOR] [COLOR=#0000ff]main[/COLOR][COLOR=#666666]([/COLOR]String args[COLOR=#666666][])[/COLOR]
    [COLOR=#666666]{[/COLOR]
        Game g [COLOR=#666666]=[/COLOR] [COLOR=#008000][B]new[/B][/COLOR] Game[COLOR=#666666]();[/COLOR]
        g[COLOR=#666666].[/COLOR][COLOR=#7d9029]setSize[/COLOR][COLOR=#666666]([/COLOR][COLOR=#008000][B]new[/B][/COLOR] Dimension[COLOR=#666666]([/COLOR][COLOR=#666666]300[/COLOR][COLOR=#666666],[/COLOR] [COLOR=#666666]200[/COLOR][COLOR=#666666]));[/COLOR]
        g[COLOR=#666666].[/COLOR][COLOR=#7d9029]setTitle[/COLOR][COLOR=#666666]([/COLOR][COLOR=#ba2121]"A Puzzle Game"[/COLOR][COLOR=#666666]);[/COLOR]
        g[COLOR=#666666].[/COLOR][COLOR=#7d9029]setLayout[/COLOR][COLOR=#666666]([/COLOR][COLOR=#008000][B]new[/B][/COLOR] FlowLayout[COLOR=#666666]([/COLOR]FlowLayout[COLOR=#666666].[/COLOR][COLOR=#7d9029]CENTER[/COLOR][COLOR=#666666]));[/COLOR]
        g[COLOR=#666666].[/COLOR][COLOR=#7d9029]setVisible[/COLOR][COLOR=#666666]([/COLOR][COLOR=#008000][B]true[/B][/COLOR][COLOR=#666666]);[/COLOR]
    [COLOR=#666666]}[/COLOR]
[COLOR=#666666]}[/COLOR]



[COLOR=#008000][B]class[/B][/COLOR] [COLOR=#0000ff][B]MyWindowAdapter[/B][/COLOR] [COLOR=#008000][B]extends[/B][/COLOR] WindowAdapter[COLOR=#666666]{[/COLOR]
    [COLOR=#008000][B]public[/B][/COLOR] [COLOR=#b00040]void[/COLOR] [COLOR=#0000ff]windowClosing[/COLOR][COLOR=#666666]([/COLOR]WindowEvent we[COLOR=#666666])[/COLOR]
    [COLOR=#666666]{[/COLOR]
        System[COLOR=#666666].[/COLOR][COLOR=#7d9029]exit[/COLOR][COLOR=#666666]([/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666]);[/COLOR]
    [COLOR=#666666]}[/COLOR]
[COLOR=#666666]}[/COLOR]


[COLOR=#008000][B]class[/B][/COLOR] [COLOR=#0000ff][B]MyAction[/B][/COLOR] [COLOR=#008000][B]implements[/B][/COLOR] ActionListener[COLOR=#666666]{[/COLOR]
    Game g[COLOR=#666666];[/COLOR]
    [COLOR=#008000][B]public[/B][/COLOR] [COLOR=#0000ff]MyAction[/COLOR][COLOR=#666666]([/COLOR]Game g[COLOR=#666666])[/COLOR]
    [COLOR=#666666]{[/COLOR]
        [COLOR=#008000][B]this[/B][/COLOR][COLOR=#666666].[/COLOR][COLOR=#7d9029]g[/COLOR][COLOR=#666666]=[/COLOR]g[COLOR=#666666];[/COLOR]
    [COLOR=#666666]}[/COLOR]
    [COLOR=#008000][B]public[/B][/COLOR] [COLOR=#b00040]void[/COLOR] [COLOR=#0000ff]actionPerformed[/COLOR][COLOR=#666666]([/COLOR]ActionEvent ae[COLOR=#666666])[/COLOR]
    [COLOR=#666666]{[/COLOR]
        String str[COLOR=#666666]=[/COLOR]ae[COLOR=#666666].[/COLOR][COLOR=#7d9029]getActionCommand[/COLOR][COLOR=#666666]();[/COLOR]
        [COLOR=#008000][B]if[/B][/COLOR][COLOR=#666666]([/COLOR]str[COLOR=#666666].[/COLOR][COLOR=#7d9029]equals[/COLOR][COLOR=#666666]([/COLOR][COLOR=#ba2121]" Objective "[/COLOR][COLOR=#666666]))[/COLOR]
        [COLOR=#666666]{[/COLOR]
            g[COLOR=#666666].[/COLOR][COLOR=#7d9029]pi[/COLOR][COLOR=#666666].[/COLOR][COLOR=#7d9029]remove[/COLOR][COLOR=#666666]([/COLOR]g[COLOR=#666666].[/COLOR][COLOR=#7d9029]x[/COLOR][COLOR=#666666]);[/COLOR]
            g[COLOR=#666666].[/COLOR][COLOR=#7d9029]pi[/COLOR][COLOR=#666666].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]g[COLOR=#666666].[/COLOR][COLOR=#7d9029]pi2[/COLOR][COLOR=#666666]);[/COLOR]
            g[COLOR=#666666].[/COLOR][COLOR=#7d9029]pi[/COLOR][COLOR=#666666]=[/COLOR]g[COLOR=#666666].[/COLOR][COLOR=#7d9029]pi2[/COLOR][COLOR=#666666];[/COLOR]
        [COLOR=#666666]}[/COLOR]
        [COLOR=#008000][B]if[/B][/COLOR][COLOR=#666666]([/COLOR]str[COLOR=#666666].[/COLOR][COLOR=#7d9029]equals[/COLOR][COLOR=#666666]([/COLOR][COLOR=#ba2121]" Instruction "[/COLOR][COLOR=#666666]))[/COLOR]
        [COLOR=#666666]{[/COLOR]
            g[COLOR=#666666].[/COLOR][COLOR=#7d9029]pi[/COLOR][COLOR=#666666].[/COLOR][COLOR=#7d9029]remove[/COLOR][COLOR=#666666]([/COLOR]g[COLOR=#666666].[/COLOR][COLOR=#7d9029]x[/COLOR][COLOR=#666666]);[/COLOR]
            g[COLOR=#666666].[/COLOR][COLOR=#7d9029]pi[/COLOR][COLOR=#666666].[/COLOR][COLOR=#7d9029]add[/COLOR][COLOR=#666666]([/COLOR]g[COLOR=#666666].[/COLOR][COLOR=#7d9029]pi4[/COLOR][COLOR=#666666]);[/COLOR]
            g[COLOR=#666666].[/COLOR][COLOR=#7d9029]pi[/COLOR][COLOR=#666666]=[/COLOR]g[COLOR=#666666].[/COLOR][COLOR=#7d9029]pi4[/COLOR][COLOR=#666666];[/COLOR]
        [COLOR=#666666]}[/COLOR]
        [COLOR=#008000][B]if[/B][/COLOR][COLOR=#666666]([/COLOR]str[COLOR=#666666].[/COLOR][COLOR=#7d9029]equals[/COLOR][COLOR=#666666]([/COLOR][COLOR=#ba2121]" Exit "[/COLOR][COLOR=#666666]))[/COLOR]
        [COLOR=#666666]{[/COLOR]
            System[COLOR=#666666].[/COLOR][COLOR=#7d9029]exit[/COLOR][COLOR=#666666]([/COLOR][COLOR=#666666]0[/COLOR][COLOR=#666666]);[/COLOR]
        [COLOR=#666666]}[/COLOR]
    [COLOR=#666666]}[/COLOR]
[COLOR=#666666]}[/COLOR]


[COLOR=#008000][B]class[/B][/COLOR] [COLOR=#0000ff][B]MyKeyAdapter[/B][/COLOR] [COLOR=#008000][B]extends[/B][/COLOR] KeyAdapter[COLOR=#666666]{[/COLOR]
    Game g[COLOR=#666666];[/COLOR]
    [COLOR=#008000][B]public[/B][/COLOR] [COLOR=#0000ff]MyKeyAdapter[/COLOR][COLOR=#666666]([/COLOR]Game g[COLOR=#666666])[/COLOR]
    [COLOR=#666666]{[/COLOR]
        [COLOR=#008000][B]this[/B][/COLOR][COLOR=#666666].[/COLOR][COLOR=#7d9029]g[/COLOR][COLOR=#666666]=[/COLOR]g[COLOR=#666666];[/COLOR]
    [COLOR=#666666]}[/COLOR]
    [COLOR=#008000][B]public[/B][/COLOR] [COLOR=#b00040]void[/COLOR] [COLOR=#0000ff]keyTyped[/COLOR][COLOR=#666666]([/COLOR]KeyEvent ke[COLOR=#666666])[/COLOR]
    [COLOR=#666666]{[/COLOR]
    [COLOR=#666666]}[/COLOR]
[COLOR=#666666]}[/COLOR]
```
I've never used AWT much.

And please, do learn to indent while typing code!


----------



## Adam Cruge (Jan 2, 2009)

Thank you for your help...
But one thing is still there is one problem...The panels are removed but new panels are not added until I maximize the window.When I maximize the window then the new panels are added.When I again make the window be to its previous size I can see the panel that I wanted to add...Can you please help me with this problem???


----------



## Adam Cruge (Jan 8, 2009)

When u run the Java code you will find that whenever buttons are pressed the window get blank,that I wanted to do intentionally,but I also wanted it to display something whenever buttons are pressed.But those thing is displayed only when I maximize or minimize the window.Can anybody solve this problem?


----------



## chandru.in (Jan 8, 2009)

*java.sun.com/javase/6/docs/api/java/awt/Component.html#invalidate()


----------

