добавление одного и того же объекта дважды - PullRequest
2 голосов
/ 04 февраля 2010

У меня есть этикетка и две панели. Я хочу добавить метку в каждую панель, но после рендеринга отображается только одна метка. я могу создать второй ярлык, но я думаю, что возможно добавить один и тот же ярлык дважды. Вот мой код:

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

Ответы [ 2 ]

7 голосов
/ 04 февраля 2010

Нельзя добавить один виджет на две панели, виджет может иметь только одного родителя.

Решение состоит в том, чтобы просто создать второй ярлык с тем же содержимым.

3 голосов
/ 04 февраля 2010

Когда вы добавляете виджет в качестве дочернего элемента к другому виджету, содержащий класс сначала выполняет операцию removeFromParent.Так что нет, вы не можете добавить виджет дважды.

Зачем вам это нужно?Может быть, это правильный вопрос.Если вы не хотите обновлять статус в нескольких местах на экране, возможно, вам нужно применить шаблон наблюдателя к вашим данным и обновить всех наблюдателей при изменении данных.

...