实战 Groovy: SwingBuilder 和 Twitter API,第 1 部分:构建基于 Swing 的 GUI 从未如此简便
2009-11-18 00:00:00 来源:WEB开发网核心提示: 编译这段代码 (javac HelloJavaSwing.java) 并运行它 (java HelloJava),应该会显示图 1 所示的应用程序: 图 1. HelloJavaSwing清单 9 给出用 Groovy 编写的同一个应用程序,实战 Groovy: SwingBuilder 和 T
编译这段代码 (javac HelloJavaSwing.java) 并运行它 (java HelloJava),应该会显示图 1 所示的应用程序:
图 1. HelloJavaSwing
清单 9 给出用 Groovy 编写的同一个应用程序。可以看到 SwingBuilder 使用了闭包,这让我们可以清晰地看出拥有关系链。
清单 9. HelloGroovySwing.groovyimport groovy.swing.SwingBuilder
import javax.swing.*
def swingBuilder = new SwingBuilder()
swingBuilder.frame(title:"Hello Groovy Swing",
defaultCloseOperation:JFrame.EXIT_ON_CLOSE,
size:[200,300],
show:true) {
panel(){
label("Hello Groovy Swing")
}
}
输入 groovy HelloGroovySwing 会看到图 2 所示的应用程序:
图 2. HelloGroovySwing
注意,在 清单 9 中,所有组件名去掉了开头的 J,方法名中也去掉了多余的 get 和 set。接下来,注意 frame 的命名参数构造器。在幕后,Groovy 调用无参数构造器,然后调用设置器方法,这与前面的 Java 示例没有区别。但是,设置器方法都集中在构造器中,代码更简洁了,去掉 set 前缀和末尾的圆括号也大大减少了视觉干扰。
Tags:实战 Groovy SwingBuilder
编辑录入:爽爽 [复制链接] [打 印]- ››Groovy轻松入门
- ››实战:企业使用交换机VLAN路由配置
- ››实战案例分析:高质量软文对网站百度排名的影响
- ››实战经验浅谈网站搬家后的优化工作
- ››实战Active Directory站点部署与管理,Active Dir...
- ››实战操作主机角色转移,Active Directory系列之十...
- ››实战经验:巧用微博推广淘宝网店
- ››实战iPhone GPS定位系统
- ››实战Linux环境配置DBD:Oracle模块
- ››实战DeviceIoControl系列之一:通过API访问设备驱...
- ››实战DeviceIoControl系列之二:获取软盘/硬盘/光盘...
- ››实战DeviceIoControl系列之三:制作磁盘镜像文件
更多精彩
赞助商链接