2

我有一个标签和两个面板。我想将标签添加到每个面板中,但渲染后只显示一个标签。我可以创建第二个标签,但我认为,必须可以添加两次相同的标签。这是我的代码:

// Create labels
Label sectorLabel = new Label("Bereich");

// Create panels/rows
HorizontalPanel row1 = new HorizontalPanel();
HorizontalPanel row2 = new HorizontalPanel();

// Add content to row1
row1.add(sectorLabel);

// Add content to row2      
row2.add(sectorLabel);
4

2 回答 2

7

您不能将相同的小部件添加到两个面板,一个小部件只能有一个父级。

解决方案是简单地创建具有相同内容的第二个标签。

于 2010-02-04T13:10:32.380 回答
3

当您将一个小部件作为子小部件添加到另一个小部件时,包含类将首先执行 removeFromParent 操作。所以不,你不能两次添加一个小部件。

你为什么想这么做 ?也许这是正确的问题。如果您不想更新屏幕上多个位置的状态,那么您可能需要将观察者模式应用于您的数据并在数据更改时更新所有观察者。

于 2010-02-04T14:21:23.407 回答