当前位置: 首页 > wzjs >正文

网站怎么做json数据库59软文网

网站怎么做json数据库,59软文网,白山市网站建设,呼和浩特今日头条新闻一、实现流程 在JFace中实现MVC模式的表格编辑功能通常需要以下步骤: 1、启用编辑模式: 调用TableVierer对象的setCellModifier()方法,设置一个ICellModifier对象,以便在表格中启用编辑模式。实现ICellModifier接口的canModify(…

一、实现流程

在JFace中实现MVC模式的表格编辑功能通常需要以下步骤:
1、启用编辑模式:

  • 调用TableVierer对象的setCellModifier()方法,设置一个ICellModifier对象,以便在表格中启用编辑模式。
  • 实现ICellModifier接口的canModify()方法,用于确定指定单元格是否可以编辑。
  • 实现ICellModifier接口的getValue()方法,用于获取指定单元格的当前值,即设置当前单元格处于编辑状态时所显示的值。
  • 实现ICellModifier接口的modify()方法,用于修改指定单元格的值,即设置单元格修改后所显示的值。
    2、处理编辑事件:
  • 监听表格的编辑事件,例如SWT.Modify事件或SWT.Selection事件。
  • 在事件处理程序中更新数据模型,并调用refresh()方法来刷新表格显示新的数据。

二、实现用例

//新建实体类
public class KingbaseUserGroupMemberEntity implements Serializable {private static final long serialVersionUID = -8343704923747926169L;private String name;private long oid;private boolean isUser;public String getName() {return name;}public void setName(String name) {this.name = name;}public long getOid() {return oid;}public void setOid(long oid) {this.oid = oid;}public boolean isUser() {return isUser;}public void setUser(boolean isUser) {this.isUser = isUser;}@Overridepublic boolean equals(Object obj) {if(obj instanceof KingbaseUserGroupMemberEntity) {KingbaseUserGroupMemberEntity entity = (KingbaseUserGroupMemberEntity)obj;return this.name.equals(entity.getName()) && this.isUser == entity.isUser();}else {return false;}}
}
//创建实现ICellModifier接口的Modify对象
public class UserGroupMemberModifier implements ICellModifier {/*** * 支撑名称*/public final String[] PROP_NAME = { "checkbox", "name", };/*** 下来列表选项*/String[] member;/*** 表格视图*/TableViewer tableViewer;public UserGroupMemberModifier(TableViewer tableViewer,String[] member) {super();this.tableViewer=tableViewer;this.member = member;}@Overridepublic boolean canModify(Object element, String property) {if (PROP_NAME[1].equals(property)) {return true;} else {return false;}}@Overridepublic Object getValue(Object element, String property) {KingbaseUserGroupMemberEntity entity = (KingbaseUserGroupMemberEntity) element;if (PROP_NAME[1].equals(property)) {for (int i = 0; i < kmember.size(); i++) {if (entity.getName().equals(kmember.toArray(new String[kmember.size()])[i])) {return i;}}return 0;} else {return null;}}@Overridepublic void modify(Object element, String property, Object value) {element = ((TableItem) element).getData();KingbaseUserGroupMemberEntity entity = (KingbaseUserGroupMemberEntity) element;if (PROP_NAME[1].equals(property)) {entity.setName(member[Integer.parseInt(value.toString())]);entity.setUser(isUser);}tableViewer.update(entity,null);;}}//新建带有复选框与下拉列表的表格
//省略标签提供器与内容提供器的创建
Table t2 = new Table(parent,SWT.MULTI | SWT.FULL_SELECTION | SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL | SWT.CHECK);
t2.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 3, 1));
t2.setHeaderVisible(true);
t2.setLinesVisible(true);
String[] strs = null;
strs = new String[] {"全部", "成员名称"};for (int index = 0; index < strs.length; index++) {TableColumn tableColumn = new TableColumn(t2, SWT.NONE | SWT.CENTER);if (index != 0) {tableColumn.setMoveable(true);}tableColumn.setText(strs[index]);
}
t2.redraw();
CheckboxTableViewer checkboxTableViewer = new CheckboxTableViewer(t2);
checkboxTableViewer.setContentProvider(new ContentProvider());
checkboxTableViewer.setLabelProvider(new UserGroupMemberProvider());
checkboxTableViewer.setColumnProperties(TableFieldModifier.PROP_NAME);
checkboxTableViewer.setInput(new KingbaseUserGroupMemberEntity());
TableTool.tableCulomnPack(t2);
TableTool.allSelectListener(t2, checkboxTableViewer, 0);//kmember为从数据库中查询到的结果集集合
String[] memberList = kmember.toArray(new String[kmember.size()]);
final CellEditor[] cellEditors = new CellEditor[3];
cellEditors[0] = null;
cellEditors[1] = new ComboBoxCellEditor(checkboxTableViewer.getTable(),memberList, SWT.READ_ONLY);
cellEditors[1].addListener(new ICellEditorListener() {@Overridepublic void editorValueChanged(boolean oldValidState, boolean newValidState) {}@Overridepublic void cancelEditor() {}@Overridepublic void applyEditorValue() {}
});
//设置ICellModifier对象
checkboxTableViewer.setCellModifier(new UserGroupMemberModifier(checkboxTableViewer,memberList));
checkboxTableViewer.setCellEditors(cellEditors);
http://www.dtcms.com/wzjs/410114.html

相关文章:

  • 佛山新网站建设哪家好下载百度app最新版并安装
  • 建设厅网站密码找回公司排名seo
  • 国土网站建设自查报告永久免费自助建站系统
  • 免费网站建站排行榜bing搜索 国内版
  • 网站被k的怎么办今日新闻最新头条10条摘抄
  • 怎么自己购买域名 建设网站网络优化工程师简历
  • 郴州专业的网站建设搜狗搜索引擎网页
  • 贵州建设厅考试网站百度怎么精准搜关键词
  • 大学 英文网站建设怎样制作一个网页
  • 浙江省住房与城乡建设部网站阿里网站seo
  • 阿里巴巴网站如何做免费推广苏州吴中区seo关键词优化排名
  • 西红门模板网站建设新人跑业务怎么找客户
  • top后缀做网站好不好短视频seo询盘获客系统
  • 做网站运用的软件网站seo教材
  • 温州设计网站建设sem和seo的区别
  • 东台做网站的网上学电脑培训中心
  • 招标网站开发锦绣大地seo官网
  • 景观设计师做交通分析常用网站google官网进入
  • 南京网站建设哪里好seo文章推广
  • 开源网站统计游戏代理免费加盟
  • 企业网站模板包含什么搜索引擎优化的方式有哪些
  • 什么公司做网站会提供源代码湖人最新消息
  • 南昌互联网公司排名吉林seo基础
  • 上海做网站待遇58网络推广
  • 苏州网站制作设计嘉兴seo外包公司费用
  • 自建外贸推广网站有哪些做销售找客户渠道
  • 深圳网站公司如何免费推广网站
  • 网站建设的基本步奏株洲seo
  • 给WordPress添加视频播放页seo站长工具下载
  • 公司网站数据分析公司商洛网站建设