⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tabletree1.java

📁 Eclipse从入门到精通源代码/第二篇 SWT_JFace篇(6-16章)
💻 JAVA
字号:
/**
 * @作者:陈刚
 * @Email:glchengang@yeah.net
 * @Blog:http://blog.csdn.net/glchengang
 */
package swt;

import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.TableTree;
import org.eclipse.swt.custom.TableTreeItem;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Table;
import org.eclipse.swt.widgets.TableColumn;

public class TableTree1 {
    public static void main(String[] args) {
        final Display display = Display.getDefault();
        final Shell shell = new Shell();
        shell.setSize(500, 375);
        //-----------------------------------------
        shell.setLayout(new FillLayout());
        //创建一个TableTree
        final TableTree tableTree = new TableTree(shell, SWT.BORDER);
        /*
         * 显示表头和表格线
         */
        Table table = tableTree.getTable();
        table.setHeaderVisible(true);
        table.setLinesVisible(true);
        /*
         * 加入三列
         */
        TableColumn col1 = new TableColumn(table, SWT.NONE);
        col1.setText("姓名");
        col1.setWidth(100);
        TableColumn col2 = new TableColumn(table, SWT.NONE);
        col2.setText("职位");
        col2.setWidth(80);
        TableColumn col3 = new TableColumn(table, SWT.NONE);
        col3.setText("特点");
        col3.setWidth(100);
        /*
         * 第一个树
         */
        TableTreeItem item1 = new TableTreeItem(tableTree, SWT.NONE);
        item1.setText("PPP项小组");
        //createItem为生成TableTreeItem的自定义方法。
        createItem(item1, "黄俊", "组长", "技术全面");
        createItem(item1, "黄钰", "程序员", "编程超快");
        createItem(item1, "张浩", "程序员", "专攻难点");
        createItem(item1, "周阅", "测试员", "认真负责");
        /*
         * 第二个树
         */
        TableTreeItem item2 = new TableTreeItem(tableTree, SWT.NONE);
        item2.setText("中国足球队");
        createItem(item2, "陈刚", "后勤", "擦鞋很专业");
        /*
         * 监听选择事件,并将所选项的记录文字显示在窗口标题栏上
         */
        tableTree.addSelectionListener(new SelectionAdapter() {
            public void widgetSelected(SelectionEvent e) {
                TableTreeItem[] ttiArray = tableTree.getSelection();
                TableTreeItem tti = ttiArray[0];
                String str = tti.getText(0) + "," + tti.getText(1);
                shell.setText(str);
            }
        });
        //-----------------------------------------
        shell.layout();
        shell.open();
        while (!shell.isDisposed()) {
            if (!display.readAndDispatch())
                display.sleep();
        }
    }

    /**
     * 自定义方法。生成TableTreeItem
     */
    static TableTreeItem createItem(TableTreeItem parentItem, String str1, String str2, String str3) {
        TableTreeItem item2 = new TableTreeItem(parentItem, SWT.NONE);
        item2.setText(str1);
        item2.setText(1, str2);
        item2.setText(2, str3);
        return item2;
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -