我有一个标签和两个面板。我想在每个面板中添加标签,但渲染后只显示一个标签。我可以创建第二个标签,但我认为,必须可以两次添加相同的标签。这是我的代码:
// 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);
答案 0 :(得分:7)
您无法将相同的小部件添加到两个面板,小部件只能有一个父级。
解决方案只是创建具有相同内容的第二个标签。
答案 1 :(得分:3)
当您将窗口小部件作为子窗口添加到另一个窗口小部件时,包含的类将首先执行removeFromParent操作。所以,你不能两次添加一个小部件。
你为什么要那样做?也许这是正确的问题。如果您不想更新屏幕上多个位置的状态,那么您可能需要对数据应用观察者模式,并在数据更改时更新所有观察者。