2013-07-01 82 views
0

我在一個視圖3個的TreeViewer對象狀的配置一欄,我想,如果我最大化/最小化視圖/ Eclipse窗口的大小,以同樣增加。這裏是我的代碼:SWT的TreeViewer調整問題

Composite composite = new Composite(parent, SWT.NONE); 
composite.setLayout(new GridLayout(1, false)); 

treeViewer1 = new TreeViewer(composite, SWT.BORDER); 
tree1 = treeViewer1.getTree(); 
tree1.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); 
tree1.pack(); 

treeViewer2 = new TreeViewer(composite, SWT.BORDER); 
tree2 = treeViewer2.getTree(); 
tree2.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); 
tree2.pack(); 

treeViewer3 = new TreeViewer(composite, SWT.BORDER); 
tree3 = treeViewer3.getTree(); 
tree3.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));    
tree3.pack(); 

然而,當某一樹的內容都是超越現在的視空間和I最大化/最小化的觀點,那棵樹觀景空間獲得比別人更大。

是否有辦法防止這種調整大小行爲由於內容的大小? 非常感謝, ND

回答

0

如果你讀的GridLayout的文檔,你會發現你的答案:

構造一個給定的列數這一類的和一個新的實例,無論是否在列應該被迫具有相同的寬度。如果numColumns的值小於1,則佈局不會設置任何控件的大小和位置。

到您問題的解決方法是更換這個(因爲你是在談論列):

composite.setLayout(new GridLayout(1, false)); 

有:

composite.setLayout(new GridLayout(3, true)); 
+0

感謝信息 – user2538778

+0

@ user2538778 [如何受理回答工作?](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work)... – Baz