想使用for循环,结果匿名类里无法修改变量 i,该怎么改?
for(inti=0;i<3;i++){jt[i].addFocusListener(newFocusListener(){@Overridepublicvoidfocu...
for(int i=0;i<3;i++) {
jt[i].addFocusListener(new FocusListener() {
@Override
public void focusLost(FocusEvent e) {
// TODO Auto-generated method stub
jl[i].setText("失去焦点");
jl[i].setForeground(Color.RED);
}
@Override
public void focusGained(FocusEvent e) {
// TODO Auto-generated method stub
jl[i].setText("");
}
});
} 展开
jt[i].addFocusListener(new FocusListener() {
@Override
public void focusLost(FocusEvent e) {
// TODO Auto-generated method stub
jl[i].setText("失去焦点");
jl[i].setForeground(Color.RED);
}
@Override
public void focusGained(FocusEvent e) {
// TODO Auto-generated method stub
jl[i].setText("");
}
});
} 展开
展开全部
for(int i=0;i<3;i++) {
jt[i].addFocusListener(new FocusListener() {
@Override
public void focusLost(FocusEvent e) {
JTextField tf=(JTextField)e.getSource();
tf.setText("失去焦点");
tf.setForeground(Color.RED);
}
@Override
public void focusGained(FocusEvent e) {
JTextField tf=(JTextField)e.getSource();
tf.setText("");
}
});
}
jt[i].addFocusListener(new FocusListener() {
@Override
public void focusLost(FocusEvent e) {
JTextField tf=(JTextField)e.getSource();
tf.setText("失去焦点");
tf.setForeground(Color.RED);
}
@Override
public void focusGained(FocusEvent e) {
JTextField tf=(JTextField)e.getSource();
tf.setText("");
}
});
}
追问
谢谢大佬,不过您把我的JLabel搞没了。我想改变的是JLabel的值,不是TextField。
这是我定义的成员:
JTextField[] jt= new JTextField[3];
JLabel[] jl= new JLabel[3];
我刚刚想到办法了,在for里定义个final 赋值就好了
追答
以为你是要改变JTextField的值。你这个办法可行!
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询