for(int row=0; row<3; row) {
for(int col=0; col<3; col) {
JPanel panel = new JPanel();
panel.addMouseListener((MouseListener) new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
System.out.println(String.valueOf(row) " " String.valueOf(col));
}
});
this.add(panel);
}
}
我想要這樣的東西,但它抱怨行不是最終變數
Local variable row defined in an enclosing scope must be final or effectively final
我嘗試了其他方法,但我找不到如何在沒有錯誤訊息的情況下傳遞這些引數(行,列)。
uj5u.com熱心網友回復:
嘗試這樣的事情:
private int row;
private int col;
public void Panel(){
for(row=0; row<3; row) {
for(col=0; col<3; col) {
JPanel panel = new JPanel();
panel.addMouseListener((MouseListener) new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
System.out.println(String.valueOf(row) " " String.valueOf(col));
}
});
this.add(panel);
}
}
}
斯蒂菲
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/462474.html
上一篇:創建在插入每個點后更新的多邊形
