2

を使用しようとしてTabLayoutPanelいますが、ページに最初に配置したときは正常に動作しているように見えますが、ボタンを押した後に実行すると (たとえば)、正しく表示されません。たとえば、次のようなことをするとうまくいきます。

TabLayoutPanel tlp = new TabLayoutPanel(2.5, Style.Unit.EM);

tlp.add(new HTML("Tab1"), "Tab 1 title");
tlp.add(new HTML("Tab2"), "Tab 2 title");
tlp.add(new HTML("Tab3"), "Tab 3 title");
tlp.setPixelSize(500, 400);

RootLayoutPanel.get().add(tlp);

ただし、次のようなことをすると、ボタンをクリックすると、表示されるのは「Tab1」だけで、他のタブ、「Tab 1 title」などはありません。

HorizontalPanel hp = new HorizontalPanel();
Button btn = new Button("push");
TabLayoutPanel tlp = new TabLayoutPanel(2.5, Style.Unit.EM);

hp.add(btn);
tlp.add(new HTML("Tab1"), "Tab 1 title");
tlp.add(new HTML("Tab2"), "Tab 2 title");
tlp.add(new HTML("Tab3"), "Tab 3 title");
tlp.setPixelSize(500, 400);

RootLayoutPanel.get().add(tlp);

btn.addClickHandler(new ClickHandler() {
   public void onClick(ClickEvent event) {

      RootLayoutPanel.get().remove(hp);
      RootLayoutPanel.get().add(tlp);
   }
});

何か案は?TabLayoutPanel私が使用しているIE8に問題があることをどこかで読みましたが、最初のケースでは問題なく表示されるため、それが問題であるとは思えません。Chrome と Firefox で何が起こるか見たかったのですが、これらのブラウザーに GWT Developer Plugin をインストールするのに数時間苦労しましたが、うまくいきませんでした。

私がやろうとしていることには本質的に何か問題がありますか? 誰かが私のコードに何か問題があると思いますか? 誰でもこれをデバッグする方法を提案できますか?

4

1 に答える 1