0

下のコードを実行すると、画像は表示されますが、その下に名前は表示されません。Window.alert には正しい名前が表示されます。したがって、エラーは次の行にある必要があります。

flexTable.setWidget(row + 1, col, new Label(youthMember.getSurname() + ", " + youthMember.getFirstname()));

同様のコードをオンラインで検索しましたが、解決策が見つかりません。

Eclipse Juno と GWT を使用しています。

よろしくお願いいたします。

よろしく、

グリン

 public void renderYouthMemberTable(List<YouthMember> youthMemberList) {
    if (youthMemberList != null) {
        int row = 0;
        int col = 0;
        flexTable.clear();
        for (final YouthMember youthMember : youthMemberList) {
            String imageDataString = youthMember.getPhotograph();

            //Display each image with the name under it.
            Image image = new Image(imageDataString);

            flexTable.setWidget(row, col, image);
            flexTable.setWidget(row + 1, col, new Label(youthMember.getSurname() + ", " + youthMember.getFirstname()));
            Window.alert("Name " + youthMember.getSurname() + ", " + youthMember.getFirstname());

            //Add click handler
            image.addClickHandler(new ClickHandler(){

                @Override
                public void onClick(ClickEvent event){
                    // Do something - Go to next view passing the ID
                    //returnID = youthMember.getId();
                    //Window.alert("returnID = " + returnID);
                    //navHandler.go(AwardOverview);
                    Window.alert("Picture clicked");
                }
            });

            //Go to next column and if the end of the columns
            //drop two rows and go to the first column
            col = col + 1;
            if (col > 7) {
                row = row + 2;
                col = 0;
            }
        }
    }

}

答えは、名前が表示されたということです。しかし、それは見えませんでした。だから私はコードを次のように変更しました(変更は画像表示の後です-常に機能しました):

flexTable.setWidget(row, col, image);
            Label lblYMname = new Label (youthMember.getSurname() + ", " + youthMember.getFirstname());
            lblYMname.setStyleName("gwt-Label-Login");
            lblYMname.setWidth("151px");
            flexTable.setWidget(row + 1, col, lblYMname);
4

1 に答える 1

0

答えは、名前が表示されたということです。しかし、それは見えませんでした。だから私はコードを次のように変更しました(変更は画像表示の後です-常に機能しました):

flexTable.setWidget(row, col, image);
        Label lblYMname = new Label (youthMember.getSurname() + ", " + youthMember.getFirstname());
        lblYMname.setStyleName("gwt-Label-Login");
        lblYMname.setWidth("151px");
        flexTable.setWidget(row + 1, col, lblYMname);
于 2014-05-08T06:40:52.940 に答える