关键代码:
IControlCreator controlCreator = new IControlCreator() {
public Control createControl(final Composite parent, final int style) {
Text text = new Text(parent, style);
return text;
}
};
// 声明一个FieldDecoration, 注意命名, 不要和DecoratedField混淆. 指的是具体的小Tip的控件.
// 可以自定义提示信息, 提示图片.
final FieldDecoration decoration = FieldDecorationRegistry.getDefault().getFieldDecoration(FieldDecorationRegistry.DEC_ERROR);
decoration.setDescription("Please Input 'OK'");
// decoration.setImage(image);
final DecoratedField decoratedField = new DecoratedField(shell, SWT.BORDER, controlCreator);
// DecoratedField.getLayoutControl()得到的是一个Composite,你的Control就是创建在这个Composite之上的.
// 可以对这个Composite进行外围的布局.
// 里面的Control是无法控制布局的, 是默认FormLayout, 且是占满整个Composite.
decoratedField.getLayoutControl().setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
// DecoratedField 的position
// 左右: SWT.LEFT, SWT.RIGHT
// 上下: SWT.TOP,SWT.BOTTOM
// 使用上下和左右进行组合, 比如 SWT.RIGHT | SWT.TOP
decoratedField.addFieldDecoration(decoration, SWT.RIGHT | SWT.TOP, false);
decoratedField.hideDecoration(decoration);
// 给这个Text添加Modify事件, 通过内容判断修改decoratedField的表现状态.
((Text) decoratedField.getControl()).addModifyListener(new ModifyListener() {
public void modifyText(ModifyEvent e) {
Text text = (Text) e.widget;
if (text.getText().trim().equals("") || text.getText().trim().toUpperCase().equals("OK")) {
decoratedField.hideDecoration(decoration);
decoratedField.hideHover();
} else {
decoratedField.showDecoration(decoration);
decoratedField.showHoverText("Not OK !");
}
}
});
具体见代码里面的注释就可以明白了, 蛮简单的.
分享到:
相关推荐
SWT和Jface开发使用必使用jar包之:equinox包,配合其他jar包一起使用
【标签】"java_swt jface swt/jface" 这些标签明确了内容的主题,"java_swt" 关注的是Java与SWT的结合,"jface" 强调了JFace库的使用,"swt/jface" 表明两者都将被讨论,特别是它们如何协同工作来构建复杂的Java应用...
《JFace/SWT学生成绩管理程序:构建与解析》 在Java开发领域,JFace和SWT是两种用于创建图形用户界面(GUI)的重要工具。本篇文章将深入探讨如何利用JFace和SWT技术来构建一个学生成绩管理程序,并分析其中的关键...
9. SWT和JFace的API使用:通过Swt_Jface+API.chm这个帮助文档,可以详细了解每个类和方法的功能和用法。 学习SWT和JFace,开发者不仅可以创建出高性能、美观的Java GUI应用,还能充分利用Eclipse的生态系统,如插件...
在本文中,我们将深入探讨如何使用Swt/Jface库中的`tableViewer`组件来创建一个基本的表格视图。Swt(Standard Widget Toolkit)是Java中用于开发原生界面的应用程序开发工具包,而Jface是建立在Swt之上的抽象层,...
SWT和Jface开发使用必使用jar包之:jface核心jar包,配置其他使用
标题中的"swt/jface.jar"是一个关键组件,它在Java开发环境中用于构建用户界面。SWT(Standard Widget Toolkit)是IBM开发的一个开源GUI库,它提供了与原生操作系统更紧密集成的图形用户界面控件。JFace是建立在SWT...
在IT行业中, SWT (Standard Widget Toolkit) 和 JFace 是用于构建 Java GUI 应用程序的两个重要库。它们是Eclipse开源项目的一部分,为开发者提供了丰富的用户界面组件和高级抽象,使得开发桌面应用程序变得更加...
在这个“SWT/JFACE 客户端登录窗口例子”中,我们可以预期会看到如何使用这两个库来创建一个基本的登录窗口。通常,这样的窗口会包含用户名和密码输入框,以及登录、取消等按钮。以下是一些可能涉及的知识点: 1. *...
本教程将涵盖 SWT/JFace 的概览、目的、许可证和平台支持、SWT 和 JFace 的区别、使用 SWT/JFace 构建 GUI 应用程序、使用 SWT/JFace 管理颜色、绘图、字体、图案等内容。 SWT/JFace 的目的: SWT/JFace 的主要...
2. JFace Data Binding:学习如何使用JFace的数据绑定机制,自动同步模型与视图的数据。 3. MVC模式:理解JFace如何运用MVC模式来分离业务逻辑和用户界面。 4. Dialogs:创建各种对话框,如MessageDialog、...
友情提示:缺少SWT包,自己去官方网站(http://www.eclipse.org/swt/)下载最新的,解决java.lang.NoClassDefFoundError: org/eclipse/core/runtime/IProgressMonitor和java.lang....去享受你的第一个jface程序吧!
SWT和Jface开发使用必使用jar包之:commands包,配合其他jar包一起使用
JFace则是建立在SWT之上的一个高级UI框架,它简化了SWT的使用,提供了数据绑定、对话框、视图、表和树等控件的抽象。JFace通过模型-视图-控制器(MVC)的设计模式,帮助开发者更好地组织代码,减少重复工作,并且...
10. **模型-视图-控制器(MVC)**:JFace鼓励使用MVC模式来组织代码,使得业务逻辑和界面展示分离,提高了代码的可测试性和可重用性。 在学习和使用SWT和JFace API时,查阅这份中文帮助文档将非常有益。它会详细...
解决eclipse设置代码自动补全后空格和等号自动上屏问题,修改为tab键上屏。适用于eclipse4.4.2.
《Eclipse SWT/Jface核心应用》...第2篇介绍了SWT基本控件的使用,以及事件处理、布局等SWT基本知识的应用。第3篇介绍了关于SWT的高级应用。第4篇介绍了JFace框架的知识及其应用。第5篇介绍了最新的RCP应用程序的开发。
- 探索JFace:了解JFace如何简化SWT的使用,如利用TreeViewer和TableViewer展示数据。 - 练习MVC:通过创建一个简单的数据编辑视图,实践JFace的MVC模式。 - 扩展Eclipse:学习如何创建Eclipse插件,将SWT/JFace...
org.eclipse.jface.text_3.14.0.v20180824-1140,最新版Eclipse代码上屏jar包,修改了代码上屏按键,取消空格上屏,不会使用的小伙伴请百度Eclipse代码上屏优化!