我是 Java 新手,我的作业遇到了一些问题。 我有一个包含 100 个 JLabels 的面板:
for(int i=0;i<100;i++)
{
num[i] = new JLabel(""+i, JLabel.CENTER);
mainPanel.add(num[i]);
}
还有一个按钮,用于在单击时为标签设置图像图标
public void actionPerformed(ActionEvent ae)
{
int a = ran.nextInt(6) +1;//random number
int b +=a;
if(b>=100)
{
b=99;
num[b].setIcon(icon);
}
else
{
num[b].setIcon(icon);
}
}
如何删除上一个位置的图标并将其更新到新位置?
最佳答案
您可以尝试记住您尝试为其设置图标的标签的数组
的索引
。
例如-
int b = 0; // make b an instance variable
public void actionPerformed(ActionEvent ae)
{
int a = ran.nextInt(6) +1;//random number
num[b].setIcon(null); //remove the icon from from previously set label
b=a; //since b already has some value, b+=a might create unexpected result, hence just assigned a
if(b>=100)
{
b=99;
num[b].setIcon(icon);
}
else
{
num[b].setIcon(icon);
}
}
关于java - 更新 Jlabel 的新位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15899805/