这是我试图调用的方法。
public void update(int status) {
if (status == 1)
{
setBorder(new LineBorder(Color.YELLOW, BORDERSIZE+1));
}
else if (status == 2)
{
setBorder(new LineBorder(Color.CYAN, BORDERSIZE+1));
}
else if (status == 3)
{
setBorder(new LineBorder(Color.BLACK, BORDERSIZE));
}
revalidate();
}
这是试图使用它的代码。
private void handleMouseClick(int x, int y, int button) {
try {
// This is called by the board squares when they are clicked
// Handle the logic of updates to the client/game here
if(button == 1){
if(x != -1 && y != -1){
update(1);
x = -1;
y = -1;
updateGrids();
}
else{
update(3);
}
}
else if(button == 3){
}
}
catch (IOException ex) {
System.err.println(ex);
}
更新方法在一个名为GridLayout的类中,我试图只使用GridLayout.update(aninteger);但它对我不起作用。
答案 0 :(得分:1)
您需要一个GridLayout对象的实例才能调用更新函数。
当知道GridLayout如何与您现有的代码相关时,我无法进一步建议。但是,如果GridLayout是临时对象,您可以尝试:
GridLayout worker = new GridLayout(... whatever ...);
worker.update(aninteger);
否则,您可能需要从相关框架中获取它,或者沿着这些方向:
this.getGridLayout().update(aninteger);