也许你对先前的Groovy程序有点烦了,全是控制台程序,现在我们
来体验一下它的界面程序吧.
<!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
-->package com
import groovy.swing.SwingBuilder
import java.awt.BorderLayout
//声明一个SwingBuilder
def swing = new SwingBuilder()
//计数器
count = 0
//声明一个label
def textlabel
//声明一个frame
def frame =
swing.frame(title:'计数器', size:[300,300])
{
borderLayout()
textlabel = label(text:"您还未点击,Come on!",
constraints: BorderLayout.NORTH)
button(text:'Click Me',
actionPerformed: {count++; textlabel.text = "您已经点击了${count}次."; println "clicked"},
constraints:BorderLayout.SOUTH)
}
//控件自适应窗口大小
frame.pack()
//显示
frame.show()
再来一个,自己运行一下就知道,用groovy写Swing程序是多么简单了.
<!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
-->package com
import groovy.swing.SwingBuilder
import javax.swing.*
import java.awt.*
def swing = new SwingBuilder()
//声明一个共用的Panel
def sharedPanel =
{
swing.panel() {
label("共享Panel")
}
}
count = 0
def textlabel
def frame =
swing.frame(title:'共享Panel救命', size:[300,300], defaultCloseOperation:JFrame.EXIT_ON_CLOSE, pack:true,
show:true) {
boxLayout(axis:BoxLayout.Y_AXIS)
textlabel = label(text:"点击了${count}次.",
constraints: BorderLayout.NORTH)
button(text:'点击我',
actionPerformed: {count++; textlabel.text = "点击了${count}次"; println "clicked"},
constraints:BorderLayout.SOUTH)
widget(sharedPanel())
widget(sharedPanel())
}
分享到:
相关推荐
apache-groovy-3.0.8.zip apache官网的groovy3.0.8版本,希望大家多多下载,apache-groovy-3.0.8.zip apache官网的groovy3.0.8版本,希望大家多多下载,apache-groovy-3.0.8.zip apache官网的groovy3.0.8版本,希望...
1. 引入Groovy库:在Java项目中添加Groovy的相关依赖,通常是`groovy-all`,确保Java能够访问Groovy运行时环境。 2. 创建GroovyClassLoader:使用这个类加载器可以动态加载和执行Groovy脚本。它继承自Java的...
Groovy 2.3系列引入了类型推断,使得代码更加可读和易于维护,同时也提高了性能。此外,这一版本还包含了对Java 8的初步支持,尽管不是全面的,但已经允许开发者利用Java 8的一些新特性,如lambda表达式。 "groovy-...
Groovy是一种基于Java平台的动态、灵活的编程语言,它扩展了Java的语法,提供了简洁、易读的代码风格,同时保持与...通过阅读《Groovy语法系列教程之注释》的PDF文档,你将更深入地了解这些概念并能够在实践中运用。
Groovy之所以受到青睐,主要是因为它比Java更加抽象和高效,允许开发者编写更少的代码来实现同样的功能。以下是对Groovy的一些核心知识点的详细说明: **Groovy的优势:** 1. **更高的抽象程度**:Groovy简化了...
版本号“2.4.7”表明这是Groovy 2.4系列的一个稳定版本,发布于2016年,该版本可能包含了自2.4.0以来的一系列改进和修复。 描述中的省略号可能是由于信息不完整,但在实际的Groovy-all-2.4.7.jar文件中,我们可以...
标题中的“Groovy和Java相互调用1”指的是在编程时如何在Groovy语言环境中调用Java类,以及反之,如何在Java程序中调用Groovy类。这是一种跨语言交互的方式,特别是在混合使用Groovy和Java的项目中非常常见。 ...
### Groovy语法系列教程之字符串(三) #### Groovy语言简介 Groovy是基于Java平台的一种敏捷开发语言,它具有动态语言的特性,同时又能与Java无缝集成。Groovy的设计哲学是让程序员能够用更少的代码做更多的事情,...
Groovy是一种动态、灵活的编程语言,它是Java平台上的一个扩展,可以无缝集成到Java项目中。Groovy的语法简洁,支持面向对象编程、函数式编程,并提供了许多现代语言特性,如闭包和动态类型。这使得Groovy成为快速...
- **设计模式**:通过一系列文章探讨了如何使用Groovy实现各种设计模式,包括但不限于: - 抽象工厂模式(Abstract Factory Pattern) - 适配器模式(Adapter Pattern) - 责任链模式(Chain of Responsibility ...
Groovy是基于Java平台的动态语言,它采用了很多Java的语法元素,但也进行了一定的改进和增强。本篇教程是关于Groovy编程语言中布尔(Boolean)类型的详细讲解,其中涉及到布尔类型的定义、使用以及Groovy对于布尔值...
### Groovy Script 入门知识点详解 #### 一、Groovy脚本简介 Groovy是一种灵活的面向对象的编程语言,它运行在Java平台上。由于其语法简洁且与Java高度兼容,因此对于Java开发者来说非常容易上手。Groovy不仅支持...
2. **bin**目录:包含了一系列可执行脚本,如`groovy`, `groovyc`, 和 `groovysh`,分别用于运行Groovy脚本、编译Groovy源代码和启动交互式Groovy shell。 3. **lib**目录:包含了Groovy运行时依赖的JAR文件,包括...
Groovy 入门教程 Groovy 是一种基于 Java 语言的脚本语言,运行在 JVM 中,语法与 Java 相似,但抛弃了 Java 的一些烦琐的语法规则,提供了更加简洁和灵活的编程体验。 Groovy 的特点 1. 简洁的语法:Groovy 语法...
7. Web开发、测试、GUI开发:本书还覆盖了使用Groovy进行Web服务、REST、XML、JSON的开发,以及Swing和Web框架如Grails、Spring Boot等的应用。同时,Groovy也支持测试框架如Spock,能够进行更有效的单元测试。 8. ...
这个版本(2.4.8)是Groovy在2.x系列中的一个稳定发行版,提供了一系列的功能和性能改进。 1. **Groovy简介** - Groovy是一种基于Java虚拟机(JVM)的编程语言,它与Java高度兼容,可以直接调用Java库。 - 它引入...