Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

How to delete JButton on JPanel dynamically?

Posted on 2002-05-11
3
Medium Priority
?
2,426 Views
Last Modified: 2010-05-18
   I dynamically add several JButton Objects in a ArrayList by other codes. After that,what  I want to implement is :When a JButton on the JPanel is clicked, the second element in the arraylist will be removed. Then I repaint the other elements on JPanel, the second JButton should disappeare,  but the code as following does not work.
   Would you show me the right codes? Thank you in advance!


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

public class DelJComponent extends JApplet {
     
    JP jp=new JP();
    ArrayList StepCollection=new ArrayList();
   
     public void init()
     {
         getContentPane().add(jp);
          for (int i=0;i<3;i++)
               {   StepNode stepObj=new StepNode();
                    StepCollection.add(stepObj);
               }
         
     }
     class JP extends JPanel
     {
          JP()
          {
          }
          public void paint(Graphics g)
          {
               super.paint(g);
               for (int i=0;i<StepCollection.size();i++)
                    {
                      StepNode tempObj=(StepNode)StepCollection.get(i);
                        add(tempObj);
                        tempObj.setLocation(25*i+50,25*i+50);
                    }
               g.drawString(Integer.toString(StepCollection.size()),30,10);
          }
     }    
     class StepNode extends JButton
     {
          StepNode()
          {
               setSize(new Dimension(30,20));
               addMouseListener(new StepMouseProcess());
          }
          public void delStep()
          {
               StepCollection.remove(2);//2 is for test
               jp.validate();
               jp.repaint();
          }
         private class StepMouseProcess extends MouseAdapter
         {
               public void mouseClicked(MouseEvent e)
               {
                        delStep();
                 }
            }          

     }

}

0
Comment
Question by:CFree
  • 2
3 Comments
 
LVL 1

Accepted Solution

by:
raid999 earned 200 total points
ID: 7003600
I have done a similar programe
Have a look at this
ftp://80.195.36.75/Raid/MSc/JAVA/Resturant
and then download the zip file.
0
 

Author Comment

by:CFree
ID: 7003837
raid999 : there is some difference between our codes.you delete the JButton by JPanel's mumber function "remove",but I want to delete the element in ArrayList then show the left on the JPanel.
0
 
LVL 1

Expert Comment

by:raid999
ID: 7004250
right sorry mate i will try to think of your way and if i come to any thing i will let you know.

_________________________
cheers
0

Featured Post

VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction Java can be integrated with native programs using an interface called JNI(Java Native Interface). Native programs are programs which can directly run on the processor. JNI is simply a naming and calling convention so that the JVM (Java…
Basic understanding on "OO- Object Orientation" is needed for designing a logical solution to solve a problem. Basic OOAD is a prerequisite for a coder to ensure that they follow the basic design of OO. This would help developers to understand the b…
Viewers will learn about arithmetic and Boolean expressions in Java and the logical operators used to create Boolean expressions. We will cover the symbols used for arithmetic expressions and define each logical operator and how to use them in Boole…
Viewers will learn one way to get user input in Java. Introduce the Scanner object: Declare the variable that stores the user input: An example prompting the user for input: Methods you need to invoke in order to properly get  user input:
Suggested Courses

972 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question