CTabItem tabItem1 = new CTabItem(newTabFolder, SWT.CLOSE);
tabItem1.setText("Tab 1");
Label lab2 = new Label(newTabFolder, 0);
lab2.setText("Hello World");
tabItem1.setControl(table);
tabItem1.setControl(lab2);
我想有一个CTabItem
其中有一张桌子和一些标签和文本框如何在一个CTabItem中添加多个项目?
但产生的问题是,任何物品/部件是由使用setControl(Control control)
功能的加入。我无法通过两个以上的控制。上面的代码首先添加一个表格,然后将其写入标签,因此一次只显示一个项目。
我一次想两件事。
我也想看看,如果我想补充的东西控制的对象,那么控制传递给setControl()
功能,但我无法找到我可以添加项目/部件的任何功能来控制 请告诉我如何去做这个。
final Composite compositeInTab = new Composite(newTabFolder, SWT.NONE);
compositeInTab.setLayout(new FillLayout());
table = new Table(compositeInTab, SWT.V_SCROLL);
btn1.addMouseListener(new MouseAdapter()
{
public void mouseDown(MouseEvent e)
{
/*JUST CREATING A TABLE AND MANAGING IT*/
String[] titles = {"System Code","Domain Name","Organizational Unit","Organization Name"};
for(int i=0; i<titles.length; i++)
{
TableColumn column = new TableColumn(table, SWT.CENTER, i);
column.setText(titles[i]);
column.setWidth(150);
column.setMoveable(true);
column.setResizable(true);
}
for(int i=0; i<50; i++)
{
TableItem item = new TableItem(table, 0);
item.setText(0, ""+i);
item.setText(1, ""+i);
item.setText(2, ""+i);
item.setText(3, ""+i);
}
for (int i = 0; i < titles.length; i++)
{
table.getColumn(i).pack();
}
table.setHeaderVisible(true);
table.setSize(table.computeSize(SWT.DEFAULT, 200));
table.setLinesVisible(true);
/*CREATING OF TABLE COMPLETE*/
compositeForTabFolder.setLayout(new GridLayout());
compositeForTabFolder.setBounds(280, 0, 500, 450);
newTabFolder.setUnselectedCloseVisible(false);
CTabItem tabItem1 = new CTabItem(newTabFolder, SWT.CLOSE);
tabItem1.setText("Tab 1");
Label lab2 = new Label(compositeInTab, 0);
lab2.setText("Hello World");
Label lab3 = new Label(compositeInTab, 0);
lab3.setText("Bye Bye World");
tabItem1.setControl(compositeInTab);
newTabFolder.setBounds(0, 0, 500, 300);
}
});
我想你的代码,它为我工作。试试这个小例子:http://pastebin.com/DyvxtV07 – Baz 2012-08-03 08:12:18