gpt4 book ai didi

java - "AWT-EventQueue-0"java.lang.NullPointerException"ChangeListener执行时出错

转载 作者:行者123 更新时间:2023-11-29 03:35:08 25 4
gpt4 key购买 nike

<分区>

我在 this.commaPos = Name.indexOf(""); 行的线程 "AWT-EventQueue-0"java.lang.NullPointerException 中得到异常我的项目。这个概念是我有 5 个 JButtons 的船,当你点击时,你将船放在 Board 上进行战舰游戏。现在很多时间我都被困在这上面。有任何想法吗 ?谢谢。 !

编辑:我将String name 的名称更改为String nname。现在我在下一行得到了同样的错误。this.commaPos = nname.indexOf(",");

 public void stateChanged(ChangeEvent event)
{

JButton currentButton = (JButton)event.getSource();
System.out.println("STATE CHANGED");
String nname = currentButton.getName();
this.commaPos = nname.indexOf(",");
int x = Integer.parseInt(nname.substring(0, commaPos));
int y = Integer.parseInt(nname.substring(commaPos + 1));

checkDeletable(x, y);

if (currentButton.getName().equals(""))
return;
if (this.shipSelected == null) {
return;
}
this.shipSelected.setPos(x, y);

clearOldCoords();
boolean valid = getShipCoords();
paintShip(valid);

if ((currentButton.isFocusOwner()) && (valid))
placeShip();
}

这里我使用变化监听器:

{
for (int y = 0; y < 10; y++) {
for (int x = 0; x < 10; x ++) {
this.myBoard[x][y] = new JButton();
this.myBoard[x][y].setMargin(margins);
this.myBoard[x][y].setToolTipText(x + "," + y);
this.myBoard[x][y].setName(null);
this.myBoard[x][y].setIcon(this.sea);
this.myBoard[x][y].addChangeListener(this);
this.myBoard[x][y].addMouseListener(this);

myBoard.add(this.myBoard[x][y]);

}
}
}

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com