抱歉标题含糊不清,但我想不出我想在标题中做什么。 无论如何,对于图像上的文本,我使用了 JLabel 文本并将其添加到图标中。
JLabel icon = new JLabel(new ImageIcon);
icon.setLayout(new GridBagLayout());
add(icon);
JLabel text = new JLabel();
text.setText(language.getString("translation"));
text.setLocation(10, 10);
text.setSize(text.getPreferredSize());
icon.add(text);
我正在为我的应用程序执行 i18n,每次我切换语言环境时,它都会将相同的 JLabel 添加到前一个语言环境中,以便您可以看到彼此重叠的文本。如何使用相同的 Jlabel 而不是在顶部添加新的 Jlabel?
谢谢
最佳答案
我想你想要创建的是一个带有自定义图标的 JLabel
您应该创建一个 JLabel 并设置它的图标,如下所示:
JLabel label = new JLabel(language.getString("translation"));
label.setIcon(new ImageIcon(/* path of your icon */));
如果你想修复文本重叠,你应该设置文本对齐方式 像这样:
lblText.setHorizontalTextPosition(JLabel.CENTER);
关于java - 在 JLabel 图标上添加 JLabel 文本。使用相同的 JLabel 文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22199078/