`

Draw2d 中 Label Clickable ButtonModel的使用

 
阅读更多

摘要:Draw2d 实现按钮和标签一样的小控件。

public class Draw2D_Example {
	public static void main(String args[]) {
		final Label label = new Label("Press a button!");
		Shell shell = new Shell();
		LightweightSystem lws = new LightweightSystem(shell);
		Figure parent = new Figure();
		parent.setLayoutManager(new XYLayout());
		lws.setContents(parent);
		
		Clickable above = new CheckBox("I'm above!");
		parent.add(above, new Rectangle(10,10,80,20));
		ButtonModel aModel = new ToggleModel();
		aModel.addChangeListener(new ChangeListener() {
			public void handleStateChanged(ChangeEvent e) {
				System.out.println(e.getPropertyName());label.setText("Above");
			}
		});
		above.setModel(aModel);
		
		Clickable below = new CheckBox("I'm below!");
		parent.add(below, new Rectangle(10,40,80,20));
		ButtonModel bModel = new ToggleModel();
		bModel.addChangeListener(new ChangeListener() {
			public void handleStateChanged(ChangeEvent e) {
				label.setText("Below");
			}
		});
		below.setModel(bModel);
		
		ButtonGroup bGroup = new ButtonGroup();
		bGroup.add(aModel);
		bGroup.add(bModel);
		bGroup.setDefault(aModel);
		
		parent.add(label, new Rectangle(10,70,80,20));
		
		shell.setSize(130,120);
		shell.open();
		shell.setText("Example");
		Display display = Display.getDefault();
		while (!shell.isDisposed()) {
			if (!display.readAndDispatch())
				display.sleep ();
		}
	}

}

 

图片:

 

 

结果 写道
mouseover
armed
pressed
selected
pressed
armed
mouseover
mouseover
armed
pressed
selected
pressed
armed
mouseover

 

ChangeListener可以捕捉各种各样的鼠标操作。

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

相关推荐

    clickable splitter

    "Clickable Splitter" 是一个专为开发者设计的控件,灵感来源于Java中的JSplitPane,它在C#环境中提供了一种类似的功能。这个控件的主要目的是允许用户通过点击和拖动来分割视图,以便更好地组织和管理界面元素。在...

    MDX动态参数的跳转_Jpivot的clickable标签的使用

    在本主题中,我们将深入探讨如何在Jpivot这个开源工具中使用MDX动态参数进行跳转,并利用其`clickable`标签来实现交互式功能。 Jpivot是一个基于Java的开源库,它提供了灵活的数据透视表和图表功能,支持用户通过...

    Python库 | st-clickable-images-0.0.2.tar.gz

    在Python中,安装这样的库通常使用`pip`,命令可能是`pip install st-clickable-images-0.0.2.tar.gz`,这会解压文件并安装库到用户的Python环境中。要使用这个库,开发者需要在代码中导入相应的模块,比如`import ...

    PyPI 官网下载 | clickable-ut-6.13.0.tar.gz

    本文将详细解析这个压缩包的结构、用途以及如何在Python项目中使用它。 1. **Python库的结构**: Python库通常包含源代码、文档、测试文件等。在这个压缩包`clickable-ut-6.13.0.tar.gz`中,我们可以推测其内部...

    Atom-clickable-npm-scripts,在atom中单击一次就执行npm脚本。参与IMBARGAV5/可点击.zip

    Atom-clickable-npm-scripts是一个为Atom文本编辑器设计的插件,它允许用户通过简单的鼠标点击来执行项目中的npm脚本。这个插件极大地提升了开发者的效率,因为在编写和调试Node.js项目时,通常需要频繁地运行npm...

    clickable:编写单行单击命令的实用程序

    Clickable允许轻松地为您的项目编写python和基于shell的工具。 Clickable基于以下构建基块: bootstrap.py独立脚本,用于安装基于conda的python环境,该脚本允许初始化隔离的python环境。 ( ) bootstrap.py的...

    p5.clickable:适用于P5.js的事件驱动,易于使用的按钮库:backhand_index_pointing_up:

    使用p5.clickable,您可以创建按钮并定义当用户将鼠标悬停在,单击,释放或将光标移到它们外部时发生的情况。 等不及了? 查看以查看该库可以执行的一些操作。 其源代码可在此存储库的文件夹中找到。 :warning: ...

    Clickable Label(iPhone源代码)

    比如,可实现给UILable上的文字加上链接,点击之后使用浏览器打开链接网页。 小编注:支持中文。但是由于代码的算法是根据空格来判断可点击的单词,所以对于中文来说,字与字直接没有空格,点击的话,会出现一大片...

    Clickable Links-crx插件

    但不再是:) 如果您想测试它,请访问:http://laurentvw.com/project/clickable-links 待办事项列表(对于下一个版本): - 选项:新/现有选项卡中的打开链接 - 随意推荐你想要的任何东西 这是由Laurent开发的原始...

    clickable-:测试当控件的clickable设置为true后ontouchvent对事件处理的变化

    事件分发 -- 探究2015/7/30 21:07:39测试当控件的clickable设置为true后ontouchvent对事件处理的变化当控件设置为可点击,那么viewgroup和view的onTouchEvent对所有事件都会消费掉当view 或者 viewgroup 设置...

    accessibility_action_clickable_span

    总之,`accessibility_action_clickable_span`是Android开发中关于无障碍功能的一个关键点,它涉及到了`ClickableSpan`的使用以及无障碍服务的兼容性。理解并熟练运用这些知识,可以帮助开发者构建更友好、更易于...

    EditDrawableText - An EditText which makes your Drawable Clickable.zip

    EditDrawableText - An EditText which makes your Drawable Clickable.zip,EditDrawableText - An EditText which makes your Drawable Clickable

    交互式SVG地图SVGClickableMap.zip

    SVG Clickable Map 是交互式 SVG 地图。SVG Clickable Map 基于:HAMLSassBootstrapSnap.svgjQueryImage SourceMap SourceAdd loading for SVG file

    Echarts2.2.6最新版使用实例

    引入后,你就可以在JavaScript中使用`echarts.init`方法初始化图表容器,并调用`setOption`方法设置图表配置项。 ECharts支持多种图表类型,包括柱状图、折线图、饼图、散点图、K线图等。例如,创建一个简单的柱状...

    clickable-prototype:用于创建可单击的原型的轻量级React库

    可点击的原型轻量级React库用于创建可点击的原型安装npm install --save clickable-prototype用法import React , { Component } from ' react 'import { View , HitBox , ViewContainer } from ' clickable-...

    html中map热点area的使用全部代码和效果,兼容所有浏览器

    3. 使用绝对路径:在`<img>`的`src`和`<area>`的`href`中使用绝对路径,以防止相对路径在不同浏览器中解析不一致。 4. 图像尺寸:确保`<img>`标签的`width`和`height`属性已设定,这样即使图片尚未加载,也能正确...

    Android代码-EditDrawableText – 一个EditText,它使您的Drawable Clickable

    EditDrawableText - An EditText which makes your Drawable Clickable Preview of EditDrawableText   Overview of EditDrawableText library EditDrawableText can be used to Show/Hide Password Left/...

    Hidn-clickable:隐藏可点击的应用文件

    在Windows操作系统中,可以使用内置的文件属性功能来隐藏文件,通过右键点击文件,选择“属性”,然后勾选“隐藏”选项。然而,这样的隐藏方式并不够安全,因为知道方法的人依然可以通过显示隐藏文件的设置找到它们...

    JPivot标签使用详解 中文

    - 显示数据的表格形式,可以与`clickable`等标签结合使用,实现交互性。 10. **selectProperties**: - 用于配置表格的显示属性,如列宽、排序等。 11. **xmlaQuery**: - 针对XML/A接口的查询,支持与XML/A...

Global site tag (gtag.js) - Google Analytics