我正在开发一个使用带标签的拖放操作的应用程序(一个必须以正确的顺序排列单词的游戏)。
标签会动态添加到容器中,我想使用按钮操作来检索标签的文本。
但按钮仅打印最后一个标签的内容。如何捕获所有这些内容?
任何帮助都将不胜感激。
String word = "ma:to:to";
String delimiter = ":";
StringTokenizer wordTokenizer = new StringTokenizer(word, delimiter);
while (wordTokenizer.hasMoreTokens()) {
tokenLabel = new Label(wordTokenizer.nextToken());
tokenLabel.setUIID("LabelWord");
tokenLabel.setDraggable(true);
container_1.add(tokenLabel);
}
buttonDialog.addActionListener((e) -> {
for (Component component : container_1) {
String s = component.toString();
System.out.println(s);
}
}
答案 0 :(得分:2)
This is the exact use case for putClientProperty
see this.
You can just do:
myLabel.putClientProperty("metaData", myData);
Then later:
Object myData = myLabel.getClientProperty("metaData");