栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

将删除按钮添加到表中的列

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

将删除按钮添加到表中的列

这是示例工作版本。

public class TableEditorTest {        public static void main(String[] args) {        Display display = new Display();        Shell shell = new Shell(display);        shell.setLayout(new FillLayout());        TableViewer viewer = new TableViewer(shell);        viewer.getTable().setHeaderVisible(true);        viewer.getTable().setLinesVisible(true);        viewer.setContentProvider(new ArrayContentProvider());        TableColumn column = new TableColumn(viewer.getTable(), SWT.NONE);        column.setText("First Name");        column.setWidth(100);        TableViewerColumn firstNameCol = new TableViewerColumn(viewer, column);        firstNameCol.setLabelProvider(new ColumnLabelProvider(){ @Override public String getText(Object element) {     Person p = (Person)element;     return p.getFirstName(); }        });        column = new TableColumn(viewer.getTable(), SWT.NONE);        column.setText("Last Name");        column.setWidth(100);        TableViewerColumn lastNameCol = new TableViewerColumn(viewer, column);        lastNameCol.setLabelProvider(new ColumnLabelProvider(){ @Override public String getText(Object element) {     Person p = (Person)element;     return p.getLastName(); }        });        column = new TableColumn(viewer.getTable(), SWT.NONE);        column.setText("Actions");        column.setWidth(100);        TableViewerColumn actionsNameCol = new TableViewerColumn(viewer, column);        actionsNameCol.setLabelProvider(new ColumnLabelProvider(){ //make sure you dispose these buttons when viewer input changes Map<Object, Button> buttons = new HashMap<Object, Button>(); @Override public void update(ViewerCell cell) {     TableItem item = (TableItem) cell.getItem();     Button button;     if(buttons.containsKey(cell.getElement()))     {         button = buttons.get(cell.getElement());     }     else     {          button = new Button((Composite) cell.getViewerRow().getControl(),SWT.NONE);         button.setText("Remove");         buttons.put(cell.getElement(), button);     }     TableEditor editor = new TableEditor(item.getParent());     editor.grabHorizontal  = true;     editor.grabVertical = true;     editor.setEditor(button , item, cell.getColumnIndex());     editor.layout(); }        });        Person p1 = new Person();        p1.setFirstName("George");        p1.setLastName("Burne");        Person p2 = new Person();        p2.setFirstName("Adam");        p2.setLastName("Silva");        Person p3 = new Person();        p3.setFirstName("Nathan");        p3.setLastName("Cowl");        List<Person> persons = new ArrayList<Person>();        persons.add(p1);        persons.add(p2);        persons.add(p3);        viewer.setInput(persons);        shell.open();        while(!shell.isDisposed())        { if(!display.readAndDispatch()) {     display.sleep(); }        }        display.dispose();    }    private static class Person    {        String firstName;        String lastName;        Person()        {        }        public String getFirstName() { return firstName;        }        public String getLastName() { return lastName;        }        public void setFirstName(String firstName) { this.firstName = firstName;        }        public void setLastName(String lastName) { this.lastName = lastName;        }    }}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/437726.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号