Java 如何编辑重复初始化的标签?

Java 如何编辑重复初始化的标签?,java,label,swt,Java,Label,Swt,假设我做了一个swt,一个按钮触发了这行代码: Label Charname = new Label(shell, SWT.NONE); Charname.setBounds(250,10+a,500,40); Charname.setText("Hello"); a=a+40; 我按了两次按钮,它会生成两个标签,如下所示: hello hello 如果我想。得到第一个标签,我会怎么做?我知道这两个标签是相同的,但这只是一个例子,因为我使用的标

假设我做了一个swt,一个按钮触发了这行代码:

    Label Charname = new Label(shell, SWT.NONE);
    Charname.setBounds(250,10+a,500,40);
    Charname.setText("Hello");
    a=a+40;
我按了两次按钮,它会生成两个标签,如下所示:

    hello
    hello

如果我想。得到第一个标签,我会怎么做?我知道这两个标签是相同的,但这只是一个例子,因为我使用的标签是不同的。

您只需要记住您创建的标签,以便再次访问它们。一种方法是将它们保存在类中的列表中

public class MyClass {

    List<Label> labels = new ArrayList<>();

    .... other code


    Label charname = new Label(shell, SWT.NONE);
    ...

    // Save in the list
    labels.add(charname);

    .....

    // Access old label
    int index = ... index of label required
    Label oldLabel = labels.get(index);

}
公共类MyClass{
列表标签=新的ArrayList();
……其他代码
Label charname=新标签(外壳,SWT.NONE);
...
//保存在列表中
标签。添加(字符名);
.....
//访问旧标签
int index=…需要标签的索引
Label oldLabel=labels.get(索引);
}