0
這是我的代碼,實際上所有的圖形用戶界面工作的領域(右側包含在圖片附加)。在這個功能我正在做的是我創建一個複合「測試」的「newTabFolder」。然後我在它上面創建ScrolledComposite「sc」,然後在它上面創建一個複合「compositeInTab」,並且在把所有的部件放在「compositeInTab」後,我創建一個TabItem來放置組合「test」。爲什麼使用ScrolledComposite SWT時,放置在TabItem上的小部件不可見?
public DomainUI(Composite composite, TabFolder newTabFolder, boolean comingFromSelf)
{
Composite test = new Composite(newTabFolder,SWT.NONE);
test.setLayout(new FillLayout());
ScrolledComposite sc = new ScrolledComposite(test, SWT.V_SCROLL|SWT.H_SCROLL);
final Composite compositeInTab = new Composite(sc, SWT.NONE);
sc.setExpandHorizontal(true);
sc.setExpandVertical(true);
sc.setMinHeight(compositeInTab.computeSize(SWT.DEFAULT, SWT.DEFAULT).y);
sc.setMinWidth(compositeInTab.computeSize(SWT.DEFAULT, SWT.DEFAULT).x);
sc.setContent(compositeInTab);
compositeInTab.setLayout(null);
sc.setAlwaysShowScrollBars(true);
/*HERE I AM CREATING LABELS AND TEXT FIELDS AND SETTING THEIR BOUNDS*/
systemCodeLabel = new Label(compositeInTab, 0);
systemCodeText = new Text(compositeInTab, SWT.BORDER);
systemCodeLabel.setText("System Code");
systemCodeLabel.setBounds(350, 60, 100, 15);
systemCodeText.setBounds(480, 60, 150, 17);
// CREATION OF LABELS AND TEXTFIELDS ENDED
// CREATION OF TABLE STARTS
myTable = new CreateTable(compositeInTab, 1);
myTable.setBounds(50, 230, 0, 0);
myTable.table.setSize(myTable.table.computeSize(570, 250));
//here i filled data in table
for(int i=0; i<myTable.table.getColumnCount(); i++)
{
myTable.table.getColumn(i).pack();
myTable.table.getColumn(i).setWidth(myTable.table.getColumn(i).getWidth()+10);
}
TabItem tabItem1 = new TabItem(newTabFolder, SWT.NONE);
tabItem1.setText("Domain");
tabItem1.setControl(test);
newTabFolder.setBounds(0, 0, 480, 300);
}
我的代碼工作時,我測試佈局設置爲FillLayout()。 :) –
@MubashirKamran太棒了。玩得開心:) – Baz
但你能告訴我關於兩個問題還在嗎?首先是滾動條現在正在顯示,但它們不能滾動以顯示其他數據,其次是當我增加newTabFolder界限時,它將不在屏幕上,那麼所有的小部件和滾動條也將不在屏幕上。如何管理這些? –