首页 > 其他分享 >【学习】Eclipse官方Zest的两个例子(一)

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

时间:2023-10-13 19:04:24浏览次数:51  
标签:NONE shell Zest GraphNode Eclipse 例子 static new SWT


原文的链接: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);
	}
}

 

 


 

标签:NONE,shell,Zest,GraphNode,Eclipse,例子,static,new,SWT
From: https://blog.51cto.com/u_16298170/7850443

相关文章

  • 在Eclipse将Java代码打包为jar用于jmeter BeanShell
    Beanshell是java的轻量级脚本,可以直接引用java代码,有下面3种方式:1、直接输入java代码2、导入java文件(或者导入class文件)3、导入jar文件现在记录第三种方式,导入jar文件第一步是先在Eclipse将Java代码打包为jar1、先准备好需要打包的代码 2、首先在Eclipse中选中需要打包......
  • 在Eclipse将Java代码打包为jar用于jmeter BeanShell(HMAC_SHA1)加密
    Eclipse代码importjavax.crypto.Mac;importjavax.crypto.SecretKey;importjavax.crypto.spec.SecretKeySpec;importjava.nio.charset.StandardCharsets;importjava.security.InvalidKeyException;importjava.security.NoSuchAlgorithmException;publicclassHMAC_data......
  • 「Java开发指南」如何在MyEclipse中使用JPA和Spring管理事务?(一)
    本教程中介绍一些基于JPA/spring的特性,重点介绍JPA-Spring集成以及如何利用这些功能。您将学习如何:为JPA和Spring设置一个项目逆向工程数据库表来生成实体实现创建、检索、编辑和删除功能启用容器管理的事务MyEclipsev2023.1.2离线版下载MyEclipse技术交流群:742336981......
  • channel 通道错误的使用例子
    1.向已经关闭的通道发送值,引起panic错误packagemainimport"fmt"funcrecv(cchanint){ ret:=<-c fmt.Println("接收成功",ret)}funcmain(){ ch:=make(chanint) gorecv(ch)//启用goroutine从通道接收值 ch<-10 close(ch) ch<-9 fmt.Prin......
  • 在Eclipse中使用Maven 2.x指南
    1.Maven2RepositoryEclipse需要知道Maven的本地仓库的路径。所以,类路径变量M2_REPO必须设置。执行以下命令:mvn-Declipse.workspace=<path-to-eclipse-workspace>eclipse:add-maven-repo 你也可以在eclipse内定义一个新的classpath变量:从菜单条,选择Window>Preferences,选择jav......
  • Eclipse修改代码以及菜单字体大小
    (1)首先找到菜单栏的窗口(Windows)选项,然后点开,再点击首选项(preferences)(2)然后点击常规(General),然后找到外观(Appearence),然后找到颜色和字体(ColorsandFonts)(3)然后找到基本(Basic),然后点击标题字体,再然后点击编辑,选择自己想要的大小二:更改Java字体找到Java,然后修改字体大小,......
  • Eclipse快捷键
    经常用到的Eclipse快捷键存盘Ctrl+s(肯定知道)注释代码Ctrl+/取消注释Ctrl+\(Eclipse3已经都合并到Ctrl+/了)代码辅助Alt+/快速修复Ctrl+1代码格式化Ctrl+Shift+f整理导入Ctrl+Shift+o切换窗口Ctrl+f6<可改为ctrl+tab方便>ctrl+shift+M导入未引用的包ctrl+w关闭单个窗......
  • Metadata.allowExtensions 注解的一个实际使用例子
    @UI注解随着SAP标准的FioriElements应用一起发布。如果SAP发布的标准CDSview包含了@Metadata.allowExtensions:true的注解,意味着Partner或者其他IndustrySolution可以通过Extensionview的方式来override标准CDSview里的annotation,前提是这些Extensio......
  • adoc转换html+UPF低功耗仿真例子+python转换C代码+readmemh的@使用
    adoc转换htmladoc这种格式是很多riscv文档使用的格式,该格式可以生成pdf,生成html。生成html的好处是,选中和翻译方便,复制粘贴方便。首先是gem软件要安装,这个软件似乎是ruby相关的(RubyGemsisapackagemanagerfortheRubyprogramminglanguagethatprovidesastandardform......
  • dpdk官方转发例子分析
    例子源码http://dpdk.org/browse/dpdk/tree/examples/skeleton/basicfwd.cmain函数主流程1.初始化环境抽象层EALintret=rte_eal_init(argc,argv);if(ret<0)rte_exit(EXIT_FAILURE,"ErrorwithEALinitialization\n");2.分配mempooldpdk使用mbuf保存packet,me......