如果已创建新的子控件,如何通知Composite
?
原因:默认情况下,StackLayout
显示没有孩子。我想确保默认显示添加到StackLayoutComposite
(具有集Composite
的{{1}}和其他一些辅助方法)的第一个控件。目前,我通过覆盖StackLayout
的{{1}}方法解决了这个问题,但这看起来很丑陋。
答案 0 :(得分:1)
如果您想根据新子项和任何关联的布局数据重新布置父Composite
,请使用composite.layout(true);
...
如果您希望父级通知窗口小部件层次结构已更改,那么您运气不好...您可以获得的最接近的是向显示添加SWT过滤器并等待{ {1}}事件对于一个以前不为人知的孩子......我这样做是一个项目,但我不得不承认代码有点难看,因为你必须监控处理......