`

[draw2d] ZoomIn and ZoomOut 放大缩小

 
阅读更多

代码:

package com.iteye.xmind.draw2d.version2;

import org.eclipse.draw2d.Button;
import org.eclipse.draw2d.LightweightSystem;
import org.eclipse.draw2d.ScalableFreeformLayeredPane;
import org.eclipse.draw2d.geometry.Rectangle;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.KeyEvent;
import org.eclipse.swt.events.KeyListener;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;


public class ZoomInZoomOut
{
	private static ScalableFreeformLayeredPane chart;
	
	public static void main(String args[])
	{
		Shell shell = new Shell();
		shell.setSize(300,200);
		shell.open();
		shell.setText("F5 ZoomIn, F6 ZoomOut!");
		
		shell.addKeyListener(new KeyListener() {
			public void keyPressed(KeyEvent e) {
			}
			public void keyReleased(KeyEvent e) {
				if(e.keyCode == SWT.F5) {
					double scale = chart.getScale();
					chart.setScale(scale+0.2);
				}
				if(e.keyCode == SWT.F6) {
					double scale = chart.getScale();
					double newScale = scale-0.2;
					if (newScale > 0.5)
						chart.setScale(newScale);
					else
						chart.setScale(scale);
				}
			}
		});
		
		
		chart = new ScalableFreeformLayeredPane();

		Button b = new Button("F5 ZoomIn, F6 ZoomOut!");
		b.setBounds(new Rectangle(40,20,160,20));
		chart.add(b);

		LightweightSystem lws = new LightweightSystem(shell);
		lws.setContents(chart);
		chart.setSize(shell.getSize().x,shell.getSize().y);
		
		Display display = Display.getDefault();
		while (!shell.isDisposed()) {
			if (!display.readAndDispatch())
				display.sleep();
		}
	}
}

 

 

F5放大,F6缩小。

分享到:
评论

相关推荐

    eclipse draw2d实例大全 源码

    eclipse draw2d实例大全 org.eclipse.draw2d.examples.cg org.eclipse.draw2d.examples.connections org.eclipse.draw2d.examples.graph org.eclipse.draw2d.examples.hittest ...org.eclipse.draw2d.examples.zoom

    Draw2D documents and samples

    《Draw2D技术详解与实例应用》 Draw2D,全称为Eclipse Draw2D,是Eclipse项目中的一部分,它提供了一套丰富的图形绘制和交互处理的API,主要用于在Java环境中创建2D图形用户界面。这个强大的工具库使得开发者能够...

    Draw2D 使用例子

    在IT领域,特别是图形用户界面(GUI)的开发中,Draw2D和GEF(Graphics Editing Framework)是两个重要的开源库,主要用于构建可定制的、交互式的2D图形编辑工具。下面将详细介绍这两个库以及如何在实际项目中使用...

    Draw2d js图形库

    Draw2d.js是一个开源的JavaScript图形库,专为在Web应用程序中绘制和操作二维图形而设计。这个库特别适用于创建流程图、UML类图、网络拓扑图和其他复杂的图表。它提供了丰富的API和功能,使得开发人员可以轻松地创建...

    Java中如何使用Draw2D和SWT绘图

    在Java编程中,Draw2D库是一个强大的工具,它允许开发者使用SWT(Standard Widget Toolkit)来创建复杂的图形用户界面,特别适用于绘制图形和图表。Draw2D是Eclipse项目的一部分,它提供了一套丰富的API,可以方便地...

    draw2d 绘制图形教程

    《draw2d绘制图形教程详解》 在计算机编程领域,可视化和交互式界面设计是不可或缺的部分,而draw2d库正是这样一个专注于二维图形绘制的工具。draw2d库,全称为Draw2D,是一个开源的JavaScript库,它允许开发者在...

    Draw2d 教程 很详细

    Draw2d是一个强大的图形绘制库,常用于在Java环境中创建二维图形用户界面。这个"Draw2d教程"可能包含了从基础到高级的各种概念和技术,帮助学习者深入理解如何利用Draw2d来构建交互式图形应用。以下是教程可能涵盖的...

    在Java中使用Draw2D和SWT绘图的源码

    Java中的Draw2D和SWT(Standard Widget Toolkit)是两种强大的图形用户界面(GUI)工具,它们被广泛用于创建复杂的2D图形和可视化应用程序。在Java编程中,这两个库为开发者提供了丰富的功能,使得在屏幕上绘制高...

    RAP放出了draw2d_in_RAP的Demo

    标题中的"RAP放出了draw2d_in_RAP的Demo"提到了两个关键概念:RAP和draw2d。这里我们详细解读这两个技术,并结合描述和标签,深入探讨它们的应用和相关知识。 首先,RAP(Rapid Application Platform)是阿里云开发...

    Draw2d画线例子

    Draw2d是Eclipse RCP(Rich Client Platform)框架中的一个子项目,专门用于2D图形绘制和交互。它提供了一套丰富的API,允许开发者在Java应用程序中创建、编辑和展示复杂的图形界面,尤其适用于创建流程图、图表和...

    Draw2d Programmer Guide

    ### Draw2D Programmer Guide #### 概览:整体框架 Draw2D是Eclipse平台下的一种轻量级图形用户界面工具包,它提供了一系列用于构建复杂图表、文档或绘图的功能组件,这些组件被称为“Figure”。不同于传统的GUI...

    draw2d 示例代码

    《Eclipse Draw2D 示例代码解析》 Eclipse Draw2D 是一个强大的图形用户界面库,主要用于在Java环境中创建和管理2D图形。它作为Eclipse RCP( Rich Client Platform)的一部分,为开发者提供了丰富的图形绘制和交互...

    swt总结draw2d绘图

    Draw2D是SWT中的一个子项目,专门用于在SWT组件上进行图形绘制,提供了一组丰富的API,使得开发者可以创建出复杂的2D图形用户界面。本总结将深入探讨SWT和Draw2D在绘图方面的知识。 1. SWT基础: SWT是一个与操作...

    draw2d_Demo_code

    《draw2d_Demo_code——探索Draw2D图形库的应用》 在计算机编程领域,图形用户界面(GUI)是与用户交互的重要方式。Draw2D是Eclipse平台下的一个开源库,专门用于创建二维图形和复杂的图形布局。本文将深入探讨Draw...

    使用Draw2d做的流程图工具

    Draw2d是Java图形库Swing或 SWT中的一个子库,主要用于创建2D图形和复杂的图形用户界面,尤其适用于绘制流程图、图表和其他图形结构。它提供了丰富的图形绘制功能,如线条、形状、文本和图像的处理,以及交互式操作...

    GEF/Draw2D入门例子

    **GEF/Draw2D入门教程** GEF(Graphical Editing Framework)和Draw2D是Eclipse项目中的两个核心组件,主要用于构建图形用户界面(GUI)特别是图形编辑工具。它们为开发者提供了强大的图形绘制和交互功能,使得创建...

    Draw2D UML Diagram

    《Draw2D UML Diagram——源码与工具的深度解析》 在软件开发过程中,UML(统一建模语言)图是一种重要的可视化工具,它帮助我们理解和表达系统的设计。Draw2D UML Diagram是一个用于创建UML类图的工具,通过源码...

    draw2d.js v2.9.1最新版本附带完整demo

    《draw2d.js v2.9.1:绘制工作流图的前端库解析与实践》 在当前数字化时代,工作流程图的可视化设计已经成为项目管理和协作的重要工具。Draw2D.js是一个专门用于创建和编辑二维图形的JavaScript库,特别适用于绘制...

    org.eclipse.draw2d.examples

    【标题】"org.eclipse.draw2d.examples" 是一个与Eclipse Draw2D相关的开发实例集合,主要用于展示和学习如何在Eclipse环境中使用Draw2D库进行图形界面编程。 【描述】提到的内容暗示了这个工程可能存在一定的兼容...

    Draw2d API (html版)

    Draw2d API Draw2d是一个宿主在SWT Composite控件中的轻量级的构件(widge)系统。一个Draw2d应用程序由一个 SWT Composite控件, 一个轻量级系统, 以及其内容(figures)组成。

Global site tag (gtag.js) - Google Analytics