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

江苏高端品牌网站建设深圳有做网站的吗

江苏高端品牌网站建设,深圳有做网站的吗,iis网站服务器安全隐患分析,做网站设计工作的报告书前言 使用JFace创建表格还是比较方便的, 如果仅仅是创建空表格的话, 以下2步即可完成: 创建TableViewer对象, 指定样式, 比如是否支持多行选择, 有无边框, 是否支持滚动条等创建TableColumn对象: 包括列展示名称, 宽度和样式等, 最终绑定到table对象 实例 创建表格 //注意…前言 使用JFace创建表格还是比较方便的, 如果仅仅是创建空表格的话, 以下2步即可完成: 创建TableViewer对象, 指定样式, 比如是否支持多行选择, 有无边框, 是否支持滚动条等创建TableColumn对象: 包括列展示名称, 宽度和样式等, 最终绑定到table对象 实例 创建表格 //注意这里,SWT.MULTI代表可以选择多行,SWT.FULL_SELECTION代表可以整行选择,SWT.BORDER边框SWT.V_SCROLL ,SWT.H_SCROLL滚动条 TableViewer tableViewer new TableViewer(shell,SWT.MULTI | SWT.FULL_SELECTION | SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL);Table table tableViewer.getTable(); // 表格边框线是否可见 table.setLinesVisible(true); // 表头是否可见 table.setHeaderVisible(true); // 设置表格大小 table.setBounds(97, 79, 373, 154); String[] titles {ID, 姓名, 性别, 年龄}; // 创建列头信息, 并最终绑定到table Arrays.stream(titles).forEach(title - TableColumnFactory.newTableColumn(SWT.NONE).width(80).text(title).create(table));运行效果 添加数据 一般情况下我们会将表格数据映射为对象列表, 比如我们有一个叫People的类, 它的属性与表中的列一一对应: public class People {private int id;private String name;private String sex;private int age; }我们需要将一个People列表作为原始数据渲染到表格当中, 关键步骤: 接收源数据数组(也可以是单个对象或者其他集合类型): TableViewer.setInput(Object)渲染接收的数据 渲染表头: TableViewer.setLabelProvider(IBaseLabelProvider)渲染内容: TableViewer.setContentProvider(IContentProvider) 在实际开发当中步骤刚好相反, 先提供渲染逻辑, 然后再输入数据: tableViewer.setContentProvider(PeoplesProvider.getInstance()); tableViewer.setLabelProvider(PeopleLabelProvider.getInstance());People people new People(); people.setId(1); people.setName(张三); people.setSex(男); people.setAge(10); tableViewer.setInput(new People[]{people});由于LabelProvider和ContentProvider逻辑是通用的, 所以采用了单例模式由于是演示, 这里仅提供了包含单个People实例的数组, 实际当中可能是很大的一个列表或其他数据类型 PeoplesProvider我们直接继承IStructuredContentProvider: import org.eclipse.jface.viewers.IStructuredContentProvider;public class PeoplesProvider implements IStructuredContentProvider {private static final PeoplesProvider provider new PeoplesProvider();public static PeoplesProvider getInstance() {return provider;}Overridepublic Object[] getElements(Object inputElement) {if (inputElement instanceof People[] objects) {return objects;}return new Object[0];} }注意getElements方法中的数据类型转换, 决定了输入的数据类型是什么, 此处我们使用People[]接收和解析, 所以在设置数据源的地方也输入同类型的数据tableViewer.setInput(People[]); PeopleLabelProvider我们继承LabelProvider并实现ITableLabelProvider: import org.eclipse.jface.viewers.ITableLabelProvider; import org.eclipse.jface.viewers.LabelProvider; import org.eclipse.swt.graphics.Image;public class PeopleLabelProvider extends LabelProvider implements ITableLabelProvider {private final static PeopleLabelProvider provider new PeopleLabelProvider();private PeopleLabelProvider() {}public static PeopleLabelProvider getInstance() {return provider;}Overridepublic Image getColumnImage(Object element, int columnIndex) {return null;}Overridepublic String getColumnText(Object element, int columnIndex) {if (!(element instanceof People people)) {return ;}return switch (columnIndex) {case 0 - String.valueOf(people.getId());case 1 - people.getName();case 2 - people.getSex();case 3 - String.valueOf(people.getAge());default - throw new IllegalStateException(Unexpected value: columnIndex);};} }运行效果 源码 Main: import org.eclipse.jface.viewers.TableViewer; import org.eclipse.jface.widgets.TableColumnFactory; import org.eclipse.swt.SWT; import org.eclipse.swt.layout.FillLayout; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Table;import java.util.Arrays;public class Main {/*** 1. 创建TableViewer对象, 指定样式, 比如是否支持多行选择, 有无边框, 是否支持滚动条等* 2. 创建TableColumn对象: 包括列展示名称, 宽度和样式等, 最终绑定到table对象** param args*/public static void main(String[] args) {final Display display Display.getDefault();final Shell shell new Shell();shell.setLayout(new FillLayout());shell.setSize(500, 375);shell.setText(SWT Application);//注意这里,SWT.MULTI代表可以选择多行,SWT.FULL_SELECTION代表可以整行选择,SWT.BORDER边框SWT.V_SCROLL ,SWT.H_SCROLL滚动条TableViewer tableViewer new TableViewer(shell,SWT.MULTI | SWT.FULL_SELECTION | SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL);Table table tableViewer.getTable();// 表格边框线是否可见table.setLinesVisible(true);// 表头是否可见table.setHeaderVisible(true);// 设置表格大小table.setBounds(97, 79, 373, 154);String[] titles {ID, 姓名, 性别, 年龄};// 创建列头信息, 并最终绑定到tableArrays.stream(titles).forEach(title - TableColumnFactory.newTableColumn(SWT.NONE).width(80).text(title).create(table));tableViewer.setContentProvider(PeoplesProvider.getInstance());tableViewer.setLabelProvider(PeopleLabelProvider.getInstance());People people new People();people.setId(1);people.setName(张三);people.setSex(男);people.setAge(10);tableViewer.setInput(new People[]{people});shell.open();while (!shell.isDisposed()) {if (!display.readAndDispatch()) {display.sleep();}}} }扩展阅读 idea开发jface、swt环境搭建Swt/Jface tableViewer入门教程一(显示tableViewer)
http://www.pierceye.com/news/458837/

相关文章:

  • 旅游电子商务网站的建设深圳华强北赛格大厦最新消息
  • 视觉设计网站建设有没有做.net面试题的网站
  • 上海资格证报名网站惠州抖音seo
  • 网页设计作品html辽宁做网站和优化哪家好
  • 做门户网站 cms山东济南网站建设优化
  • 网站美工怎么做wordpress论坛化插件
  • 怎样建设自己的视频网站首页电子商务网站开发教程论文6
  • 推荐一个做照片书的网站湛江网站建设招聘
  • 厦门建网站网址ai自动设计logo
  • 蓝色织梦cms企业网站模板全站源码招聘类网站如何做
  • 郑州建设银行网站wordpress数据库怎么设置
  • 电子商务网站实例php网站建设哪家好
  • 网站开发课程报告心得简单的网页设计作品欣赏
  • 网站建设用什么系统华为弹性云做网站
  • 莱芜高端网站建设报价网站色彩策划
  • 房地产项目网站做网站互联网公司有哪些
  • 凡科做网站友情链接怎么做wordpress广告位设置
  • org已经备案的网站wap网站建设服务
  • 企业网站模板免费下载企业网站模板免费完整版的网站模板
  • 外贸网站建设公司价格怎样做触屏版手机网站
  • 南宁站建好就够用秦皇岛微信推广平台
  • 物流公司做网站有用吗河北省住房和城乡建设网站
  • 网站举报官网seo站长论坛
  • 建站工具有哪些论坛网站建设总体要求
  • 公司网页网站建设 pptwordpress php 采集
  • 遵义网站开发公司舟山网站建设企业
  • 外贸网站一站式服务招网站建设销售
  • 绚丽的网站wordpress进入后台显示500
  • 威海城乡与住房建设部网站小颜自助建站系统
  • 域名怎么解析到网站做响应式网站需要学哪些知识