码迷,mamicode.com
首页 > 其他好文 > 详细

控制cellEditor是否为可编辑

时间:2014-11-06 11:06:53      阅读:159      评论:0      收藏:0      [点我收藏+]

标签:style   io   sp   on   ad   new   as   tt   table   

class TableViewerEditingSupport extends EditingSupport {


int column;
private TableViewer columnViewer;
private CellEditor editor;

public TableViewerEditingSupport(ColumnViewer viewers, int column) {
super(viewers);
this.columnViewer = (TableViewer) viewers;
switch (column) {
case 0:
editor = new TextCellEditor(columnViewer.getTable(), SWT.SINGLE
| SWT.BORDER);
break;
case 1:
editor = new TextCellEditor(columnViewer.getTable(), SWT.SINGLE
| SWT.BORDER);
break;

case 2:
editor = new TextCellEditor(columnViewer.getTable(), SWT.SINGLE
| SWT.BORDER|SWT.READ_ONLY);
break;
case 3:
editor = new TextCellEditor(columnViewer.getTable(), SWT.SINGLE
| SWT.BORDER|SWT.READ_ONLY);
break;
case 4:
editor = new TextCellEditor(columnViewer.getTable(), SWT.SINGLE
| SWT.BORDER);
break;
case 5:
editor = new TextCellEditor(columnViewer.getTable(), SWT.SINGLE
| SWT.BORDER);
break;
}
this.column = column;
}

/**此方法就是控制cellEditor是否为可编辑的
@Override
protected boolean canEdit(Object element) {
/**将【element】转换为Solution对象【solution】*/
//执行判断,如果易有项目,则不可编辑直接返回false,如果index为1,2不能编辑
/**调用【SpringUtil.getProjectListDAO】方法取得【IProjectListDAO】对象并调用其【findBySolution】方法传入【solution。solutionId】取得的结果放到List对象【tempList】中*/
/**判断【tempList】如果部位空则返回false*/
/**判断index如果为1或者为2返回false*/
PmSolution solution = (PmSolution)element;
/**
* 如果方案ID为空,此方案为新增方案,直接可以编辑
*/
if(!StringUtil.isNullOrEmpty(solution.getSolutionId()))
{
if(column==2||column==3){
return false;//返回false 为 不可编辑
}
}
return true; //返回true 为可编辑
}

控制cellEditor是否为可编辑

标签:style   io   sp   on   ad   new   as   tt   table   

原文地址:http://blog.csdn.net/mrzhang0419/article/details/40855987

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!