`

【学习】Eclipse官方Zest的两个例子(一)

 
阅读更多

原文的链接:http://wiki.eclipse.org/index.php/GEF_Zest_Visualization#Layout_Algorithms

 

感觉不错的有这么几点:

  1. 代码很少;
  2. 居然开始打开有动态效果;
  3. 三个GraphNode点都是可以用鼠标动态调整位置的;
  4. 三个GraphNode点和三个GraphConnection都可以选中,而且选中变色;
  5. 三个GraphNode点都有Tooltip;
  6. 三个GraphNode点拖动出窗口,自动有滚动条;

 

 

 

源代码:

/**
 * This snippet creates a very simple graph where Rock is connected to Paper
 * which is connected to scissors which is connected to rock.
 * 
 * The nodes a layed out using a SpringLayout Algorithm, and they can be moved
 * around.
 * 
 * @author Ian Bull
 * 
 */
public class GraphSnippet1 {
	private static Display display = Display.getDefault();
	private static Shell shell;
	private static void createShell() {
		shell = new Shell(display);
		shell.setText("GraphSnippet1");
		shell.setLayout(new FillLayout());
		shell.setSize(400, 400);
	}
	private static void openShell() {
		shell.open();
		while (!shell.isDisposed()) {
			while (!display.readAndDispatch()) {
				display.sleep();
			}
		}
	}
	
	public static void main(String[] args) {
		createShell();
		createZestExample();
		openShell();
	}
	
	
	private static void createZestExample() {
		Graph g = new Graph(shell, SWT.NONE);
		GraphNode n = new GraphNode(g, SWT.NONE, "Paper");
		GraphNode n2 = new GraphNode(g, SWT.NONE, "Rock");
		GraphNode n3 = new GraphNode(g, SWT.NONE, "Scissors");
		new GraphConnection(g, SWT.NONE, n, n2);
		new GraphConnection(g, SWT.NONE, n2, n3);
		new GraphConnection(g, SWT.NONE, n3, n);
		g.setLayoutAlgorithm(new SpringLayoutAlgorithm(LayoutStyles.NO_LAYOUT_NODE_RESIZING), true);
	}
}

 

 

效果图:



 

 

  • 大小: 11.9 KB
分享到:
评论

相关推荐

    maven_eclipse_GEF-zest-3.7.1_m2e-extras_m2e.zip

    总结来说,"maven_eclipse_GEF-zest-3.7.1_m2e-extras_m2e.zip"这个压缩包集合了Maven、Eclipse、GEF-Zest和m2e-extras的关键组件,旨在提供一个完整的、集成了图形化开发和Maven构建的开发环境。通过这个集成,...

    GEF的Eclipse官方示例(源代码)

    **GEF(Graphical Editing Framework)**是Eclipse平台下的一个图形编辑框架,它为构建图形用户界面(GUI)提供了一种强大的工具,特别适用于创建复杂的图形编辑器。GEF主要用于设计和实现基于模型的图形编辑器,...

    maven与eclipse集成所需插件

    Maven和Eclipse是Java开发中的两个重要工具。Maven是一个项目管理和综合工具,主要用于构建、依赖管理和项目信息管理。而Eclipse则是一款强大的集成开发环境(IDE),广泛用于Java应用的开发。将Maven与Eclipse集成...

    maven插件安装以及eclipse安装maven插件的资料

    5. 创建或导入Maven项目:在Eclipse中,可以通过`File` -> `New` -> `Other` -> `Maven Project`来创建一个新的Maven项目,或者通过`Import`导入已有的Maven项目。 在Eclipse中使用Maven插件,你可以享受以下便利:...

    eclipse_gef_example.rar

    这个"eclipse_gef_example.rar"压缩包提供了一系列的例子,帮助开发者更好地理解和掌握GEF框架。以下是对每个部分的详细解释: 1. **org.eclipse.gef.examples.text** 这个部分主要展示了如何在GEF环境中处理文本...

    m2eclipse插件

    在提供的压缩包子文件中,有两个与Zest图形库相关的文件: 1. `org.eclipse.zest.core_1.3.0.v20110221-2050.jar`:这是Eclipse Zest核心库的一个版本,Zest是一个用于在Eclipse RCP应用程序中创建图形表示的库,...

    eclipse的GEF插件

    Eclipse的GEF(Graphical Editing Framework)插件是一个强大的工具,用于在Eclipse集成开发环境中创建、编辑和展示图形用户界面。它为开发者提供了一种框架,支持创建可定制的、交互式的图形编辑器,使得开发人员...

    org.eclipse.gef

    【标题】"org.eclipse.gef" 是一个与 Eclipse 开发平台相关的插件,全称为 Graphical Editing Framework。这个插件是 Eclipse 社区为构建图形化用户界面(GUI)和图形编辑工具提供的一种强大框架。它允许开发者创建...

    Eclipse插件开发:GEF入门系列宝典

    Eclipse插件开发是软件开发领域中的一个重要环节,它允许开发者扩展Eclipse集成开发环境(IDE)的功能,以满足特定的开发需求。GEF(Graphical Editing Framework)是Eclipse平台的一部分,专为构建图形化编辑器而...

    Eclipse Indigo 离线安装maven插件m2eclipse

    旧版本eclipse,比如indigo版本要安装maven,旧的在线安装方式已经失效,因为依赖的zest和m2eclipse的location url都...所以从已经安装这两个包的eclipse中分离出离线的安装包,拷贝到对应的features和plugins下即可。

    eclipse及gef相关文档

    在给定的压缩包中,我们有两个与Eclipse插件和图形编辑框架(GEF)相关的PDF文档,这些文档是学习和理解Eclipse生态系统的重要资源。 首先,"Eclipse Plug-ins Third Edition Dec. 2008.pdf"这本书籍可能涵盖了...

    eclipse插件 GEF-SDK-3.4.0.zip

    GEF(Graphical Editing Framework)是Eclipse平台中的一个关键组件,专门用于构建图形化用户界面(GUI)和图形编辑器。本压缩包"GEF-SDK-3.4.0.zip"提供了GEF的软件开发工具包,帮助开发者在Eclipse环境中创建功能...

    eclipse gef 插件 最新版本

    Eclipse GEF(Graphical Editing Framework)插件是Eclipse IDE中的一个重要组成部分,主要用于构建图形化用户界面,尤其是用于创建图形编辑器。它为开发者提供了一套完整的框架,用于开发基于模型的图形编辑工具,...

    eclipse常用插件安装

    1. **Subclipse**:这是一个用于Eclipse的Subversion客户端,使得用户可以直接在IDE内部管理版本控制系统中的代码。安装Subclipse,你可以访问其更新站点:http://subclipse.tigris.org/update_1.6.x。 2. **m2...

    Eclipse插件开发--gef开发指南与入门系列宝典

    在IT行业中,Eclipse是一个广泛使用的开源集成开发环境(IDE),尤其在Java开发领域中备受青睐。为了增强Eclipse的功能,开发者可以利用其强大的插件系统进行扩展。GEF(Graphical Editing Framework)是Eclipse提供...

    The Eclipse Graphical Editing FrameWork

    《Eclipse插件》一书由Dan Rubel和Eric Clayberg撰写,被认为是学习如何扩展Eclipse平台的权威指南。该书不仅帮助开发者理解Eclipse插件的构建和分发,而且强调了插件开发中的最佳实践。 Eclipse插件开发涉及到对...

    java eclipse gef

    10. **示例和实践**:博客可能会提供一个或多个实际例子,演示如何从头开始创建一个简单的图形编辑器。 压缩包内的文件"SubjectEditor"和"SubjectModel"可能代表了博主分享的代码示例,"SubjectEditor"可能是图形...

    ECLIPSE GEF 5.4.0

    5. **Zest图渲染库**:ECLIPSE GEF 5.4.0可能集成了Zest库,这是一个用于绘制图表和图形网络的库,可以创建有吸引力的视觉表示。 6. **插件体系**:Eclipse本身就是一个插件化的开发环境,GEF也是通过插件形式集成...

    Eclipse GEF Reference(Plugins&Examples;,with source)

    提供的两个压缩包文件——"GEF-Update-3.8.0.zip"和"GEF-ALL-3.8.0.zip"可能是Eclipse GEF的特定版本(3.8.0)的更新和完整版本。"GEF-Update-3.8.0.zip"可能包含用于更新现有Eclipse环境中GEF组件的元数据和二进制...

    pom editor 插件

    压缩包中的两个文件是Eclipse插件依赖的库文件: - `org.eclipse.zest.core_1.3.0.v20110221-2050.jar`:这是Eclipse Zest图形库的核心组件,用于绘制图表和可视化数据。在POM Editor插件中可能用于展示项目依赖树...

Global site tag (gtag.js) - Google Analytics