系统吧 专业的电脑操作系统,支持重装各种原版系统xp/win7/win8/win10 这个系统怎么样?试试系统吧系统,体验办公系统畅快愉悦感。 各种电脑系统安装过程一样,神一般的畅快!
-->
当前位置:主页 > 电脑技术 >

为你示范eclipse中table控件怎么具有编辑功能

作者:许紫惜 分类:电脑技术 发布时间:2017-09-19 18:04:36

电脑现已成为我们工作、生活和娱乐必不可少的工具了,在使用电脑的过程中,可能会遇到eclipse中table控件怎么具有编辑功能的问题,如果我们遇到了eclipse中table控件怎么具有编辑功能的情况,该怎么处理怎么才能解决eclipse中table控件怎么具有编辑功能带来的困扰呢,对于这样的问题其实我们只需要eclipse mars 2没有看之前的经验的话,看看经验链接,下面的讲解和之前经验联系在一起的。1、表的数据模型。2、标签类3、内容提供器4、table数据ArrayList 不熟...

电脑现已成为我们工作、生活和娱乐必不可少的工具了,在使用电脑的过程中,可能会遇到eclipse中table控件怎么具有编辑功能的问题,如果我们遇到了eclipse中table控件怎么具有编辑功能的情况,该怎么处理怎么才能解决eclipse中table控件怎么具有编辑功能带来的困扰呢,对于这样的问题其实我们只需要eclipse mars 2没有看之前的经验的话,看看经验链接,下面的讲解和之前经验联系在一起的。1、表的数据模型。2、标签类3、内容提供器4、table数据ArrayList<>不熟悉的看看之前的经验链接。新建一个ICellModifier编辑类,读取table中的数据,更新table中的数据:public class Xinxibianji implements ICellModifier{@这样就解决了这样的问题,接下来给大家带来eclipse中table控件怎么具有编辑功能的详细操作步骤。

工具/原料

eclipse mars 2

方法/步骤

没有看之前的经验的话,看看经验链接,下面的讲解和之前经验联系在一起的。

1、表的数据模型。

2、标签类

3、内容提供器

4、table数据ArrayList<>

不熟悉的看看之前的经验链接。

新建一个ICellModifier编辑类,读取table中的数据,更新table中的数据:

public class Xinxibianji implements ICellModifier{

@Override

public boolean canModify(Object element, String property) {

//true :列可以修改

//false :不能修改

return false;

}

@Override

public Object getValue(Object element, String property) {

读取tabled中的数据

return null;

}

@Override

public void modify(Object element, String property, Object value) {

把新的数据写到table中

}

}

为你示范eclipse中table控件怎么具有编辑功能

读取table中的数据getValue:

Shangpinxinxi sp=(Shangpinxinxi) element;//一行数据

switch(property){

case "fenlei": //列名

return sp.getfenlei();

case "mingcheng":

return sp.getmingcheng();

case "zhujima":

return sp.getzhujima();

case "danwei":

return sp.getdanwei();

case "jiage":

return Float.toString(sp.getjiage());

case "hyjiage":

return Float.toString(sp.gethyjiage());

}

return null;

为你示范eclipse中table控件怎么具有编辑功能

把新修改的数据保存在table中:

TableItem ti=(TableItem)element;

Shangpinxinxi sp=(Shangpinxinxi)ti.getData(); 一行数据

switch(property){ 把新数据写到数据模型中

case "fenlei":

sp.setfenlei((String)value);

break;

case "mingcheng":

sp.setmingcheng((String)value);

break;

case "zhujima":

sp.setzhujima((String)value);

break;

case "danwei":

sp.setdanwei((String)value);

break;

case "jiage":

sp.setjiage(Float.valueOf(value.toString()));

break;

case "hyjiage":

sp.sethyjiage(Float.valueOf(value.toString()));

break;

}

tv.update(sp, null); 把新数据更新在table中

为你示范eclipse中table控件怎么具有编辑功能

在createPartControl这个方法中定义列名:

String[] lm={"fenlei","mingcheng","zhujima","danwei","jiage","hyjiage"};

tv.setColumnProperties(lm);

为你示范eclipse中table控件怎么具有编辑功能

定义编辑器,多少列就定义几个:

CellEditor[] cell = new CellEditor[6];

cell[0]=new TextCellEditor(table,SWT.SINGLE | SWT.BORDER);

cell[1]=new TextCellEditor(table,SWT.SINGLE | SWT.BORDER);

cell[2]=new TextCellEditor(table,SWT.SINGLE | SWT.BORDER);

cell[3]=new TextCellEditor(table,SWT.SINGLE | SWT.BORDER);

cell[4]=new TextCellEditor(table,SWT.SINGLE | SWT.BORDER);

cell[5]=new TextCellEditor(table,SWT.SINGLE | SWT.BORDER);

tv.setCellEditors(cell);

为你示范eclipse中table控件怎么具有编辑功能

设置table的编辑类:

tv.setCellModifier(new Xinxibianji());

为你示范eclipse中table控件怎么具有编辑功能

运行项目,发现数据不能编辑。

为你示范eclipse中table控件怎么具有编辑功能

把canModify这个方法的返回值修改为true。

为你示范eclipse中table控件怎么具有编辑功能

运行项目,table中的数据编辑了!

为你示范eclipse中table控件怎么具有编辑功能

xp 更多>>
win7 更多>>
win8 更多>>
win10 更多>>
U盘 更多>>
电脑技术 更多>>
网站地图 | 豫ICP备2021035069号-4 | 友情链接qq:191064436
系统吧

版权所有 © 2012-2023 系统吧 免责声明:本站资源均收集于互联网,其著作权归原作者所有,如果有侵犯您权利的资源,请来信告知,我们将及时删除相应资源。