Иногда мы сталкиваемся с SWT-композицией, который абсолютно отказывается правильно отлаживаться. Часто мы сталкиваемся с этим, когда мы вызываем dispose на композите, а затем заменяем его другим; хотя это, судя по всему, строго не ограничивается этим случаем.
Когда мы сталкиваемся с этой проблемой, примерно в 50% случаев, мы можем называть pack()
и layout()
на оскорбительном композите, и все будет хорошо. Примерно в 50% случаев мы должны это сделать:
Point p = c.getSize();
c.setSize(p.x+1, p.y+1);
c.setSize(p);
Мы это случались практически с каждой комбинацией менеджеров макетов и т.д.
Хотелось бы, чтобы у меня был хороший, простой, воспроизводимый случай, но я этого не делаю. Я надеюсь, что кто-то узнает эту проблему и скажет: "Ну, ну, тебе не хватает xyz...."