本文介紹了SWT:通知組合它有一個新的子項的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!
問題描述
如果創(chuàng)建了新的子控件,如何通知aComposite
?
原因:默認情況下,對于StackLayout
不顯示子對象。我希望確保默認情況下顯示添加到StackLayoutComposite
中的第一個控件(這是一個具有SetStackLayout
和其他幾個幫助器方法的Composite
)。目前我是通過重寫StackLayout
的layout
方法解決的,但這在我眼里很難看。
推薦答案
如果要根據(jù)新的子項和任何關聯(lián)的布局數(shù)據(jù)重新布局父項Composite
,只需使用composite.layout(true);
.
如果您希望父級通知您小部件層次結構已更改,那么您就不走運了……您能得到的最接近的方法是在顯示屏上添加一個SWT過濾,然后等待一個以前不知名的孩子的SWT.Resize
事件……我已經(jīng)這樣做了,這是一個項目,但我必須承認代碼變得有點難看,因為您還必須監(jiān)視處理.
這篇關于SWT:通知組合它有一個新的子項的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,