TableViewer初入
本例会实现些效果
右键菜单
双击一行
首先新建PeopleEntity,此类为假想数据表entity
- package com.mypractice;
- import java.util.Date;
- public class PeopleEntity {
- private Long id;
- private String name;
- private boolean sex;
- private int age;
- private Date createDate;
- public int getAge() {
- return age;
- }
- public void setAge(int age) {
- this.age = age;
- }
- public Date getCreateDate() {
- return createDate;
- }
- public void setCreateDate(Date createDate) {
- this.createDate = createDate;
- }
- public Long getId() {
- return id;
- }
- public void setId(Long id) {
- this.id = id;
- }
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- public boolean isSex() {
- return sex;
- }
- public void setSex(boolean sex) {
- this.sex = sex;
- }
- }
然后创建PeopleFactory,用来生成PeopleEntity
- package com.mypractice;
- import java.util.ArrayList;
- import java.util.Date;
- import java.util.List;
- public class PeopleFactory {
- public static List<PeopleEntity> getPeoples() {
- List<PeopleEntity> list = new ArrayList<PeopleEntity>();
- {
- PeopleEntity o = new PeopleEntity();
- o.setId(new Long(1));
- o.setName("赵云");
- o.setSex(true);
- o.setAge(28);
- o.setCreateDate(new Date());
- list.add(o);
- }
- {
- PeopleEntity o = new PeopleEntity();
- o.setId(new Long(2));
- o.setName("关羽");
- o.setSex(true);
- o.setAge(20);
- o.setCreateDate(new Date());
- list.add(o);
- }
- {
- PeopleEntity o = new PeopleEntity();
- o.setId(new Long(3));
- o.setName("曹操");
- o.setSex(true);
- o.setAge(23);
- o.setCreateDate(new Date());
- list.add(o);
- }
- {
- PeopleEntity o = new PeopleEntity();
- o.setId(new Long(4));
- o.setName("张飞");
- o.setSex(false);
- o.setAge(30);
- o.setCreateDate(new Date());
- list.add(o);
- }
- return list;
- }
- }
创建OpenAction,生成右键菜单"打开"
- package com.mypractice;
- import org.eclipse.jface.action.Action;
- import org.eclipse.jface.dialogs.MessageDialog;
- import org.eclipse.jface.viewers.IStructuredSelection;
- import org.eclipse.jface.viewers.TableViewer;
- public class OpenAction extends Action {
- private TableViewer tv;
- public OpenAction(TableViewer tv) {
- this.tv = tv;
- setText("打开");
- }
- public void run() {
- IStructuredSelection selection = (IStructuredSelection) tv.getSelection();
- PeopleEntity o = (PeopleEntity) selection.getFirstElement();
- if(o ==