当我单击按钮时,我想在面板中添加一个按钮,我做到了,但我的程序不像以前那样工作。这是我之前的程序:
带有粉红色按钮的南面板是卡片布局面板。当我点击东边的灰色按钮时,卡片面板发生了变化。当我单击粉红色按钮时,发生了这种情况:
一个粉色按钮 setText 到一个标签。在我向卡片面板“TOPLI NAPICI”添加一个按钮后,发生了这种情况:
如您所见,一个按钮“moka”添加到我想要的面板中,但是当我单击一个按钮时,它 setText 两次,只有新按钮(在本例中为“MOKA”) setText 一次。卡片面板中的其他面板也发生了这种情况:
当我单击按钮添加新按钮时,这是我的代码的一部分
if (enter == JOptionPane.OK_OPTION) {
try{
Double price1=Double.parseDouble(priceField.getText());
String name1= productField.getText();
Product name = new Product(name1, price1);
Application .manu.add(name);
if (field.getSelectedItem().equals("TOPLI NAPICI")){
for(Controller c:Controller) {
c.tnp.add(new JButton(name1));//c is panel , holds all panels
c.tn.revalidate();//c.tn is panel which is changed( adding one button), cardpanel
c.removeAll();
c.panels();//create all panels which is removed
c.revalidate();
System.out.print( c.tnp.size());//tnp is a list with buttons, shows that add one more button, that is correct
}
喜欢它复制面板,或者当我click button
单击两次时。是否可以?虽然我只更改了卡片布局中的一个面板(“TOPLI NAPICI”),但它在卡片布局中的所有面板中都发生了变化(“SOKOVI”和“ALKOHOL”)有什么问题?
谢谢你的帮助。