2009-05-14 15 views
1

パネルに可変量のラベルを追加する際に問題があります。私の問題は、私のClickListenerを追加する何らかの理由で、ウィジェット(エラー)の代わりにvoidを返します。私はちょうど "新しいラベル( 'xyz')"うまく動作しているが、私は自分のClickListenerを持つように各パネルが必要です。コードは次のとおりです。パネルに動的ウィジェットを追加する(GWT)

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 
    } 
    })); 
} 

答えて

3

メソッド連鎖からの戻り値は、常に最後の値です。新しいA().b().c()を変更した場合、返される型はcの戻り値の型になります。

戻り値の型がnew Label("Test").addClickListener(...の場合、ClickListenerのaddClickListener戻り値の型はvoidです。

あなたは、ラベルを作成し、それを追加し、クリックリスナーを追加し、することができます

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

おかげで、私はそれだけで同じラベルを追加するため、またはループのエラーをスローし続けるだろうと心配していたが、私それはそうではありません。 – Organiccat

関連する問題