- 浏览: 1149666 次
- 性别:
- 来自: 火星郊区
博客专栏
-
OSGi
浏览量:0
文章分类
- 全部博客 (695)
- 项目管理 (48)
- OSGi (122)
- java (79)
- Vaadin (5)
- RAP (47)
- mysql (40)
- Maven (22)
- SVN (8)
- 孔雀鱼 (10)
- hibernate (9)
- spring (10)
- css (3)
- 年审 (6)
- ant (1)
- jdbc (3)
- FusionCharts (2)
- struts (4)
- 决策分析 (2)
- 生活 (10)
- 架构设计 (5)
- 破解 (2)
- 狼文化 (4)
- JVM (14)
- J2EE (1)
- 应用服务器 (1)
- 我的链接 (5)
- 数学 (2)
- 报表 (1)
- 百科 (6)
- Flex (7)
- log4j (2)
- PHP (1)
- 系统 (2)
- Web前端 (7)
- linux (6)
- Office (1)
- 安全管理 (5)
- python (2)
- dom4j (1)
- 工作流 (3)
- 养生保健 (4)
- Eclipse (8)
- 监控开发 (1)
- 设计 (3)
- CAS (1)
- ZK (41)
- BluePrint (3)
- 工具 (1)
- SWT (7)
- google (2)
- NIO (1)
- 企业文化 (2)
- Windoes (0)
- RCP (7)
- JavaScript (10)
- UML (1)
- 产品经理 (2)
- Velocity (10)
- C (1)
- 单元测试 (1)
- 设计模式 (2)
- 系统分析师 (2)
- 架构 (4)
- 面试 (2)
- 代码走查 (1)
- MongoDB (1)
- 企业流程优化 (1)
- 模式 (1)
- EJB (1)
- Jetty (1)
- Git (13)
- IPV6 (1)
- JQuery (8)
- SSH (1)
- mybatis (10)
- SiteMesh (2)
- JSTL (1)
- veloctiy (1)
- Spring MVC (1)
- struts2 (3)
- Servlet (1)
- 权限管理 (1)
- Java Mina (1)
- java 系统信息 (6)
- OSGi 基础 (3)
- html (1)
- spring--security (6)
- HTML5 (1)
- java爬虫搜索 (1)
- mvc (3)
最新评论
-
Tom.X:
http://osgia.com/
将web容器置于OSGi框架下进行web应用的开发 -
chenyuguxing:
你好, 为什么我的bundle export到felix工程中 ...
在Apache Felix中运行bundle -
string2020:
<niceManifest>true</ni ...
Bundle Plugin for Maven -
jsonmong:
OSGI,是未来的主流,目前已相当成熟。应用OSGI比较好的, ...
基于OSGi的声明式服务 -
zyhui98:
貌似是翻译过来的,有很少人在linux上做开发吧
如何成为“10倍效率”开发者
TableViewer tablesResultTable = new TableViewer(scrolledComposite, SWT.FULL_SELECTION
);
Table table = tablesResultTable.getTable();
table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
table.setHeaderVisible(true);
table.setLinesVisible(true);
tablesResultTable.setContentProvider(new FailedDDLContentProvider());
ColumnViewerToolTipSupport.enableFor(tablesResultTable,ToolTip.NO_RECREATE);
TableViewerColumn newColumnTableColumn1 = new TableViewerColumn(tablesResultTable, SWT.NONE);
newColumnTableColumn1.setLabelProvider(new FailedDDLLabelProvider(0));
newColumnTableColumn1.getColumn().setWidth(100);
newColumnTableColumn1.getColumn().setText(Messages.reportPage2TableName);
TableViewerColumn newColumnTableColumn2 = new TableViewerColumn(tablesResultTable, SWT.NONE);
newColumnTableColumn2.setLabelProvider(new FailedDDLLabelProvider(1));
newColumnTableColumn2.getColumn().setWidth(400);
newColumnTableColumn2.getColumn().setText(Messages.reportPage2FailedDDL);
TableViewerColumn newColumnTableColumn3 = new TableViewerColumn(tablesResultTable, SWT.NONE);
newColumnTableColumn3.setLabelProvider(new FailedDDLLabelProvider(2));
newColumnTableColumn3.getColumn().setWidth(400);
newColumnTableColumn3.getColumn().setText(Messages.reportPage2FailedReason);
class FailedDDLLabelProvider extends
CellLabelProvider {
private int index;
public FailedDDLLabelProvider(int index) {
this.index = index;
}
public String getColumnText(Object element, int columnIndex) {
if(element == null) return "";
if (element instanceof FailedDDL) {
FailedDDL failedDDL = (FailedDDL) element;
switch (columnIndex) {
case 0:
return failedDDL.getName();
case 1:
return failedDDL.getFailedDDL();
case 2:
return failedDDL.getFailedReson();
default:
return "";
}
}
return null;
}
public String getToolTipText(Object element) {
return getColumnText(element,index);
}
public Point getToolTipShift(Object object) {
return new Point(5, 5);
}
public int getToolTipDisplayDelayTime(Object object) {
return 300;
}
public int getToolTipTimeDisplayed(Object object) {
return 5000;
}
@Override
public void update(ViewerCell cell) {
cell.setText(getColumnText(cell.getElement(),index));
}
}
例子
import org.eclipse.jface.viewers.CellLabelProvider;
import org.eclipse.jface.viewers.ColumnViewerToolTipSupport;
import org.eclipse.jface.viewers.IStructuredContentProvider;
import org.eclipse.jface.viewers.TableViewer;
import org.eclipse.jface.viewers.TableViewerColumn;
import org.eclipse.jface.viewers.Viewer;
import org.eclipse.jface.viewers.ViewerCell;
import org.eclipse.jface.window.ToolTip;
import org.eclipse.swt.SWT;
import org.eclipse.swt.graphics.Point;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
/**
* Explore New API: JFace custom tooltips drawing.
*
* @author Tom Schindl <tom.schindl@bestsolution.at>
* @since 3.3
*/
public class Snippet011CustomTooltips {
private static class MyContentProvider implements
IStructuredContentProvider {
public Object[] getElements(Object inputElement) {
return new String[] { "one", "two", "three", "four", "five", "six",
"seven", "eight", "nine", "ten" };
}
public void dispose() {
}
public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
}
}
/**
* @param args
*/
public static void main(String[] args) {
final Display display = new Display();
Shell shell = new Shell(display);
shell.setLayout(new FillLayout());
TableViewer v = new TableViewer(shell, SWT.FULL_SELECTION);
v.getTable().setLinesVisible(true);
v.getTable().setHeaderVisible(true);
v.setContentProvider(new MyContentProvider());
ColumnViewerToolTipSupport.enableFor(v,ToolTip.NO_RECREATE);
TableViewerColumn column = new TableViewerColumn(v, SWT.NONE);
LabelProvider lp1 = new LabelProvider(0);
column.setLabelProvider(lp1);
column.getColumn().setText("Column 1");
column.getColumn().setWidth(100);
TableViewerColumn column1 = new TableViewerColumn(v, SWT.NONE);
LabelProvider lp2 = new LabelProvider(1);
column1.setLabelProvider(lp2);
column1.getColumn().setText("Column 2");
column1.getColumn().setWidth(100);
v.setInput("");
shell.setSize(200, 200);
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep();
}
}
display.dispose();
}
}
class LabelProvider extends CellLabelProvider {
private int index;
public LabelProvider(int index) {
this.index = index;
}
public String getToolTipText(Object element) {
return "Tooltip"+ index + " (" + element + ")";
}
public Point getToolTipShift(Object object) {
return new Point(5, 5);
}
public int getToolTipDisplayDelayTime(Object object) {
return 300;
}
public int getToolTipTimeDisplayed(Object object) {
return 2000;
}
public void update(ViewerCell cell) {
cell.setText(cell.getElement().toString());
}
public int getIndex() {
return index;
}
public void setIndex(int index) {
this.index = index;
}
发表评论
-
RCP开发者的好去处之ICON系列(持续更新中... ...)
2012-03-31 10:13 1121为了找个合适的图片是不是头大的不像样子了?OK,我现在就 ... -
RAP 整合 Spring (基于 Spring-osgi )
2012-03-31 10:12 1384RAP 介绍请见: http://www.eclipse. ... -
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
2012-03-25 14:50 1460引用 在rcp的路径添加了mysql驱动,并添加之cla ... -
解决JFace Dialog中ScrollComposite无法滚动
2012-03-26 10:26 1588今天写了一个Jface的dialog,作为配置界面,其中有 ... -
SWT实现弹出日历控件
2012-03-27 08:00 2580实现像网页上的那种用户单击一个Text框然后框下面出现一个日历 ... -
JFace进度条
2012-03-27 08:01 1111Java代码 someB ... -
getConfigurationElementsFor 无法获得扩展点的信息
2012-03-26 10:27 1092做项目的时候RCP程序在eclipse调试环境下面运行正常 ... -
测试rcp 和 rap 何时触发 组建.addListener(SWT.xxx, new Listener() )的方法
2012-02-24 14:22 1279Java代码 直接通过反射让组建监 ... -
RAP 界面显示不完全的问题
2012-02-24 14:22 1235rap运行第一刷新界面总是刷新不完整,组件错位,后台报Layo ... -
Uploading files with RAP 1.4
2012-02-17 11:37 1615One of the new things in RAP 1. ... -
【RAP】CAS PIA 快速浏览入口地址
2012-02-07 08:23 1235下面的链接是访问RAP应用的入口。有2中方式,图片上已经注明。 ... -
RAP 与 RCP的区别
2012-02-07 08:23 1322RAP 可以让开发人员使用 JAVA API 和按照 E ... -
将Eclipse RAP部署到Tomcat中
2012-02-07 08:23 1137在上次成功将我的RCP项目迁移到浏览器中运行后,开始研究 ... -
RAP(Rich AJAX Platform)的可部署文件下载
2012-02-07 08:24 1138这是我自己做的RAP的可部署文件,可以下载下来解压到Tom ... -
Eclipse rcp/rap 开发经验总结(15) -rap如何使用js
2012-02-03 08:11 14411. 把输入的字符串当 javascript 执行 ... -
Eclipse rcp/rap 开发经验总结(14) -rap 图片、数据缓存处理
2012-02-03 08:10 1505一、概述 在进行了 rap 的基本学习之后,您对 rap ... -
Eclipse rcp/rap 开发经验总结(13) -Rap/Rcp保存按钮处理方式
2012-02-03 08:10 1078一、概述 在做项目的过程中,处理编辑区的保存机制的时候。发 ... -
Eclipse rcp/rap 开发经验总结(12) -Rap 优化之组件的销毁
2012-02-03 08:10 866一、概述 经过几个月的rap 项目实战,总结了一些小 ... -
Eclipse rcp/rap 开发经验总结(11) -rcp/rap与spring ibatis集成
2012-02-03 08:10 13081. rcp/rap 与 spring 集成 Activa ... -
Eclipse rcp/rap 开发经验总结(10) -Rap不同系统间的差异和处理方式
2012-02-01 08:01 1396平常进行 rap 程序开发一般都是在 win ...
相关推荐
你可以自定义实现这些接口,使表格具备更强大的数据管理能力。 在实际开发中,你可能还会遇到如性能优化、多线程数据加载等问题。例如,对于大数据量的表格,可以考虑使用虚拟化技术,只渲染可见区域的行,以提高...
6. **定制化功能**: `tableViewer`支持自定义列宽、单元格样式,甚至自定义单元格编辑器,提供高度可定制化的用户体验。 关于压缩包文件`tableReflectPro`,名字暗示可能是一个关于反射(Reflection)的工具或示例...
【TableViewer示例】——全面探索TableViewer的使用 在Java SWT(Standard Widget Toolkit)库中,TableViewer是一个强大的组件,用于在用户界面中展示表格数据。它提供了丰富的功能,如排序、过滤、编辑和自定义列...
`TableViewer`的设计允许开发者扩展其功能,如添加自定义的列类型、编辑器等,以满足特定需求。 总结,`TableViewer`是Eclipse RCP中用于构建强大表格视图的关键组件。通过理解并熟练运用其核心概念和功能,开发者...
本篇文章将重点讲解如何在SWT中自定义TableViewer,以便展示项目中的所有错误信息,这对于调试和问题排查至关重要。 TableViewer是SWT JFace库中的一个组件,它为 SWT 的 Table 控件提供了一种数据绑定和视图操作的...
在IT领域,特别是Java Swing和Eclipse RCP开发中,TableViewer是经常被用来展示数据的一个组件。"Set TableViewer Cell Focus"这个话题是关于如何在TableViewer中设置焦点到特定单元格上,这对于实现用户交互和数据...
在 Eclipse RCP(Rich Client Platform)开发中,`TableViewer` 是一个强大的组件,用于展示数据表。`TableViewer` 是 `JFace` 库的一部分,它提供了与 SWT(Standard Widget Toolkit)表格控件的高级接口,使得数据...
通过查看源码,你可以学习到如何结合SWT的TableViewer和自定义分页逻辑来创建一个具备翻页功能的数据展示界面。此外,此项目可能还包含了相关的布局管理,以保证UI的美观和响应性。 总的来说,这个项目对于学习和...
点击Enter键,对TableViewer的单元格进行逐个遍历的辅助类,推荐用于使用ViewerColumn.setEditingSupport的可编辑TableViewer。 Since 3.3, an alternative API is available, see ViewerColumn.setEditingSupport...
Jface TableViewer控件实现的对标签文件的标签属性的修改功能。 用TextCellEditor和ComboBoxCellEditor给表格添加编辑功能。 通过表格的addListener事件为表格的单元格添加编辑功能,事例根据鼠标点击时鼠标的X和Y...
RCP开发比Table更高级的TableViewer的使用。实现列的隐藏与显示
在本文中,我们将深入探讨如何使用Swt/Jface库中的`TableViewer`组件来创建一个功能丰富的表格,并实现用户可以直接在表格上编辑数据的功能。Swt/Jface是Eclipse平台的一部分,提供了一套用于构建图形用户界面(GUI...
标题“Setting focus cell in TableViewer”涉及到的是在Eclipse RCP(Rich Client Platform)开发中,如何在TableViewer组件中设置焦点单元格。TableViewer是Eclipse JFace库中的一个关键组件,用于显示和操作表格...
Plugins-JFace-TableViewer.rar Plugins-JFace-TableViewer.rar Plugins-JFace-TableViewer.rar Plugins-JFace-TableViewer.rar Plugins-JFace-TableViewer.rar
虽然文件名字起得很笼统 里面只有一个关于TableViewer的项目源码 源码的依据是我转载的一篇学习TableViewer的博客源码 http://blog.csdn.net/weiweiwei256/article/details/49514699
### Eclipse从入门到精通2 —— JFace TableViewer详解 #### 概述 本文档针对CSDN上《Eclipse从入门到精通2》一书的部分更新内容进行了整合,主要聚焦于Eclipse环境下JFace框架的TableViewer组件的深入解析。...
在实际开发中,我们常常需要对Table进行自定义扩展,以满足特定需求,例如添加自定义列类型、实现复杂的排序功能、或者提供更丰富的交互体验。 首先,让我们了解Table的基本用法。创建一个Table,你需要实例化`org....
- `TableViewer` 是 JFace 中用于管理表格内容的组件,它可以自动处理表格的排序、过滤等功能。 - `Table` 是 SWT 中用于显示表格的控件,`TableKiller` 通过 `TableViewer` 获取对 `Table` 的操作权限。 2. **...
6. **数据适配器**:为了将TableViewer中的数据适配到打印环境中,可能需要创建自定义的数据适配器。这些适配器将表格数据转换为适合打印格式的对象,如Text或Image。 7. **多页打印**:如果表格内容过多,不能在...
例如,项目空间管理员可以创建一个名为tableviewer的角色,并将用户Alice、Bob和Charlie添加到该角色中: use prj1; create role tableviewer; grant List, CreateInstance on project prj1 to role tableviewer; ...