多语言展示
当前在线:1296今日阅读:19今日分享:20

SWT学习:[1]Table的用法及示例

主要介绍一下SWT中Table的用法,以及一些示例。这里讲解的是SWT中的Table,不是JFace里面的Tableviewer.
工具/原料

Eclipse

方法/步骤
1

创建Table:Table table = new Table(composite, SWT.MULTI | SWT.FULL_SELECTION | SWT.CHECK);  Table可以使用的样式:SWT.MULTI——选中多行;SWT.FULL_SELECTION——选中一行中的全部单元格;SWT.CHECK——带复选框的Table;

2

设置表头可见:table.setHeaderVisible(true);设置表格线可见:table.setLinesVisible(true);

3

添加列:TableColumn tc = new TableColumn(table, SWT.CENTER);//这个是我自己定义的键值类NameValue  nv = new NameValue('Num', '编号');  tc.setData(nv);//设置数据  tc.setText(nv.getValue());//设置列名  tc.setWidth(40);//设置列宽  tc.setResizable(false);//设置列宽不能改变

4

添加行:TableItem item = null;  for (int row = 0; row < objs.length; row++) {   item = new TableItem(table, SWT.NONE);   item.setText(0, row + 1 + '');   for (int col = 0; col < table.getColumnCount() ; col++) {    if (objs[row][col] != null)     item.setText(col + 1, objs[row][col].toString());   }}此处的objs是二维数组。

5

给某行设置前景色或者背景色: //指定颜色Display display = new Display();Color red = display.getSystemColor(SWT.COLOR_RED);//可以在添加行的时候同时设置前景或者背景色。  item.setForeground(red);

6

为Table添加监听事件:--------例1---------选中事件table.addListener(SWT.Selection, new Listener() {   public void handleEvent(Event event) {//TODO ....}} ---------例2--------鼠标按下事件table.addListener(SWT.MouseDown, new Listener() {   public void handleEvent(Event event) {//TODO....}}

7

改变Table中某个单元格的值:tableItem.setText(columnIndex, value);

推荐信息