SWT Designer 实现了强大SWT/JFace 可视化编辑功能,在Graphical Editor下画出来的图形效果很好,下面就来尝试用Draw2D里面的Figure来模拟一下SWT里常见的控件。
从Button开始吧。
图形编辑的时候,Button看起来就是一个凸起的图形,加上一个字符描述。
图中第二个就是真实的Button,而第一个是用Draw2D 绘制的,并没有处理按键行为,仅仅是模拟外观,在图形编辑时就够了。
public class ButtonFigure extends Label{
public ButtonFigure(){
this("");
}
public ButtonFigure(String text){
super(text);
//LineBorder lineBorder = new LineBorder();
//lineBorder.setColor(ResourceConstants.BORDER_COLOR);
//Choose which style is better, flat or 3D
SimpleRaisedBorder border = new SimpleRaisedBorder();
setBorder(border);
}
}
代码很简单,不用解释了。画出来的效果与上图中一致。
如果定义Button中的文字位置,有可能为LEFT、CENTER、RIGHT,这时候就要重新绘制Button上的文字了。
/* (non-Javadoc)
* @see org.eclipse.draw2d.Label#paintFigure(org.eclipse.draw2d.Graphics)
*/
@Override
protected void paintFigure(Graphics graphics) {
Dimension size = FigureUtilities.getTextExtents(getText(), graphics
.getFont());
Rectangle bounds = getBounds();
graphics.drawText(getText(), bounds.x + 3, bounds.y
+ (bounds.height - size.height) / 2);
}
代码为在LEFT位置绘制文字,效果为:
如果需要在RIGHT位置,修改
graphics.drawText(getText(), bounds.x + 3, bounds.y
+ (bounds.height - size.height) / 2);
中对应参数就就行了。
分享到:
相关推荐
本文将深入探讨如何使用Draw2D模拟SWT中的RadioButton和CheckedBox控件,以及这些控件在实际应用中的作用和实现方式。 首先,RadioButton和CheckedBox是GUI中的两种常见选择控件。RadioButton通常用于提供一组互斥...
"Draw2D模拟SWT控件之TextField、TextArea"这个主题聚焦于使用Draw2D库来模仿SWT(Standard Widget Toolkit)中的两种基本输入控件:TextField和TextArea。SWT是Eclipse基金会的一个开源项目,用于构建原生外观的...
在Java编程中,Draw2D库是一个强大的工具,它允许开发者使用SWT(Standard Widget Toolkit)来创建复杂的图形用户界面,特别适用于绘制图形和图表。Draw2D是Eclipse项目的一部分,它提供了一套丰富的API,可以方便地...
### draw2d与swt知识点概述 #### 一、Draw2d与SWT简介 - **Draw2d**: 是Eclipse平台中一个重要的组件库,主要用于构建复杂的图形用户界面(GUI),尤其适用于需要绘制图形、节点等复杂结构的应用场景。通过Draw2d...
当Draw2D与SWT结合使用时,可以在SWT的窗口或控件上绘制Draw2D图形,实现高度定制化的可视化效果。 在“在Java中使用Draw2D和SWT绘图的源码”中,我们可以学习如何将这两个库整合起来,创建动态的、交互式的2D图形...
Draw2D是SWT中的一个子项目,专门用于在SWT组件上进行图形绘制,提供了一组丰富的API,使得开发者可以创建出复杂的2D图形用户界面。本总结将深入探讨SWT和Draw2D在绘图方面的知识。 1. SWT基础: SWT是一个与操作...
org.eclipse.draw2d.examples.swt org.eclipse.draw2d.examples.text org.eclipse.draw2d.examples.thumbnail org.eclipse.draw2d.examples.tree org.eclipse.draw2d.examples.uml org.eclipse.draw2d.examples.zoom
其中,SWT(Standard Widget Toolkit)是用于Java开发的一个跨平台GUI工具包,而LightweightSystem是连接SWT和Draw2D的一个桥接类,它负责管理两者之间的交互,处理事件和更新绘图显示。 Figure是Draw2D中的基本...
**Draw2D** 是一个用于Java平台的2D绘图框架,它是SWT(Standard Widget Toolkit)的一部分。Draw2D提供了丰富的图形绘制和操作功能,可以创建复杂的图形布局和交互设计。它包括基本的几何形状绘制、变换、填充、...
21章 Draw2d,swt,eclipse插件开发学习笔记 21章 Draw2d,swt,eclipse插件开发学习笔记 21章 Draw2d,swt,eclipse插件开发学习笔记 21章 Draw2d,swt,eclipse插件开发学习笔记 21章 Draw2d,swt,eclipse插件开发学习...
Draw2d.js是一个开源的JavaScript图形库,专为在Web应用程序中绘制和操作二维图形而设计。这个库特别适用于创建流程图、UML类图、网络拓扑图和其他复杂的图表。它提供了丰富的API和功能,使得开发人员可以轻松地创建...
Draw2D的轻量系统与SWT Canvas关联,系统监听大部分SWT事件,并将这些事件转发给EventDispatcher处理,后者再将事件传递给合适的Figure。对于绘画事件,则转发给UpdateManager进行管理和协调。 #### 绘制过程详解 ...
Draw2d API Draw2d是一个宿主在SWT Composite控件中的轻量级的构件(widge)系统。一个Draw2d应用程序由一个 SWT Composite控件, 一个轻量级系统, 以及其内容(figures)组成。
《draw2d绘制图形教程详解》 在计算机编程领域,可视化和交互式界面设计是不可或缺的部分,而draw2d库正是这样一个专注于二维图形绘制的工具。draw2d库,全称为Draw2D,是一个开源的JavaScript库,它允许开发者在...
Draw2d是一个强大的图形绘制库,常用于在Java环境中创建二维图形用户界面。这个"Draw2d教程"可能包含了从基础到高级的各种概念和技术,帮助学习者深入理解如何利用Draw2d来构建交互式图形应用。以下是教程可能涵盖的...
Draw2d是Eclipse RCP(Rich Client Platform)框架中的一个子项目,专门用于2D图形绘制和交互。它提供了一套丰富的API,允许开发者在Java应用程序中创建、编辑和展示复杂的图形界面,尤其适用于创建流程图、图表和...
6. **与其他Eclipse组件的集成**:由于Draw2D是Eclipse项目的一部分,它可以无缝集成到SWT和JFace中,与RCP(Rich Client Platform)和其他Eclipse插件协同工作。 在“Draw2D”这个压缩包文件中,可能包含了以下...
Draw2d是Java图形库Swing或 SWT中的一个子库,主要用于创建2D图形和复杂的图形用户界面,尤其适用于绘制流程图、图表和其他图形结构。它提供了丰富的图形绘制功能,如线条、形状、文本和图像的处理,以及交互式操作...
《draw2d_Demo_code——探索Draw2D图形库的应用》 在计算机编程领域,图形用户界面(GUI)是与用户交互的重要方式。Draw2D是Eclipse平台下的一个开源库,专门用于创建二维图形和复杂的图形布局。本文将深入探讨Draw...
《Eclipse Draw2D 示例代码解析》 Eclipse Draw2D 是一个强大的图形用户界面库,主要用于在Java环境中创建和管理2D图形。它作为Eclipse RCP( Rich Client Platform)的一部分,为开发者提供了丰富的图形绘制和交互...