我声明了我的布尔变量,但它似乎与我想要的做相反。当我点击一个按钮时,它会自行删除,当布尔变量为false时。我该如何解决它,以便每当我点击'删除'按钮时将'deleteNow'变量变为true?因为看起来deleteNow总是如此。下面是我的代码片断:为什么我的布尔变量弄乱了?
public class deleteButton
{
public boolean deleteNow = false;
class ClickListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
deleteNow = true;
}
}
ActionListener deleteButtonClicked = new ClickListener();
deleteButton.addActionListener(deleteButtonClicked);
class ClickListenerTwo implements ActionListener
{
public void actionPerformed(ActionEvent f)
{
if (deleteNow = true)
{
JButton buttonThatWasClicked = (JButton) e.getSource();
Container parent = buttonThatWasClicked.getParent();
parent.remove(buttonThatWasClicked);
parent.revalidate();
parent.repaint();
}
else
{
System.out.println("The button wasn't deleted");
}
}
}
}
使用'=='来进行比较,而不是'='(它们赋值)。用布尔值可以删除整个'= true'部分。 – Olli
由于上述原因投票结束为错字。 – Tunaki
它是伪代码,不是有效的java。可能不是100%的副本,并且他在原文中写入==。 – oligofren