Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将动态小部件添加到面板(GWT)_Java_Gwt_Onclick - Fatal编程技术网

Java 将动态小部件添加到面板(GWT)

Java 将动态小部件添加到面板(GWT),java,gwt,onclick,Java,Gwt,Onclick,我在向面板添加可变数量的标签时遇到问题。我的问题是,由于某种原因,当添加我的ClickListener时,它返回void,而不是widget(错误)。如果我有一个“新标签('xyz'),它可以正常工作,但我需要每个面板都有自己的ClickListener。代码如下: for (int x = 0; x < productIDArray.length(); x++) { mainPanel.add(new Label("Test").addClickListener(new ClickL

我在向面板添加可变数量的标签时遇到问题。我的问题是,由于某种原因,当添加我的
ClickListener
时,它返回
void
,而不是widget(错误)。如果我有一个“新标签('xyz'),它可以正常工作,但我需要每个面板都有自己的
ClickListener
。代码如下:

for (int x = 0; x < productIDArray.length(); x++) {
  mainPanel.add(new Label("Test").addClickListener(new ClickListener() {
    @Override
    public void onClick(Widget sender) {
      // TODO Auto-generated method stub
    }
  }));
 }
for(int x=0;x
方法链接返回的值始终是最后一个值。如果更改新的
A().b().c()
,则返回的类型将是c的返回类型

在您的示例中,
newlabel(“Test”).addClickListener(…
的返回类型是ClickListener的addClickListener返回类型,它是空的

您可以创建标签,添加“单击侦听器”,然后添加它:

for(int x = 0;x<productIDArray.length();x++) {
  Label l = new Label("Test);
  l.addClickListener(...);
  mainPanel.add(l);
 }

对于(intx=0;xThanks),我担心它会继续添加相同的标签,或者因为循环而抛出错误,但我发现情况并非如此。