java - 如何在运行时更改 JLabel 变量名称?

标签 java swing jlabel

我的 JFrame 中有超过 100 个 JLabel 组件,我将它们命名为 m1,m2,m3.... 以及我想更改每个文本的文本而不手动执行。

因此,我想在运行时设置每个标签的名称并更改其文本,这是我从数据库中检索的文本。

这就是我正在尝试做的事情:

JLabel j = new JLabel(); 

for(int i=0; i<100 ; i++)
{   
    j.setName("m"+i);
    j.setText(""+i);
}

最佳答案

您可以创建一个 jlabel 数组。然后您可以通过 m[x] 访问它 示例

JLabel m[] = new JLabel[100]; 

//initialize jlabel array before you add  like m[i]=new JLabel();

for (int i = 0; i < m.length; i++) {
     m[i].setText(""+i);     
}

您面临的问题是,即使您将标签命名为m1,m2,您也无法通过动态命名来调用。

m+"i".setText(); // impossible 

关于java - 如何在运行时更改 JLabel 变量名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31410523/

相关文章:

java - selenium webdriver xpath InvalidSelectorError

java - JFrame 未正确加载

java - 鼠标滑过 JLabel 时不显示文本

java - 这个具有 2 个静态方法的实用程序类是线程安全的吗?

java - getActualTypeArguments 与父级,从子级获取其参数化类型

java - 使用 CardLayout 切换面板

Java,单击时更改 JLabel 文本

java - 如何在运行时更改 JList 的单元格图标

java - 将 web.xml 从 2.3 升级到 2.4 时出现问题

java - 绘制隐藏的 Java swing 组件