WEB开发网
开发学院软件开发Java 实战 Groovy: SwingBuilder 和 Twitter API,第 1... 阅读

实战 Groovy: SwingBuilder 和 Twitter API,第 1 部分:构建基于 Swing 的 GUI 从未如此简便

 2009-11-18 00:00:00 来源:WEB开发网   
核心提示: 如果您不了解 Swing,这段代码看起来可能仍然比较复杂,实战 Groovy: SwingBuilder 和 Twitter API,第 1 部分:构建基于 Swing 的 GUI 从未如此简便(6),但是,如果您具备哪怕最粗浅的 Swing 经验,它包含一个或多个 JMenu,JMenu 进而

如果您不了解 Swing,这段代码看起来可能仍然比较复杂。但是,如果您具备哪怕最粗浅的 Swing 经验,就可以看出它具有 Swing 的特征:干净、清晰和高效。

正如在前一节中所做的,通过脚本了解概念,然后把脚本转换为类。创建文件 Gwitter.groovy,见清单 10。这是 Groovy + Twitter 客户机 UI 的起点。


清单 10. Gwitter UI 的骨架
import groovy.swing.SwingBuilder 
import javax.swing.* 
import java.awt.* 
 
class Gwitter{  
 static void main(String[] args){ 
  def gwitter = new Gwitter() 
  gwitter.show() 
 } 
   
 void show(){ 
  def swingBuilder = new SwingBuilder()  
  swingBuilder.frame(title:"Gwitter", 
            defaultCloseOperation:JFrame.EXIT_ON_CLOSE, 
            size:[400,500], 
            show:true) { 
  }   
 }  
} 

输入 groovy Gwitter,确认会出现空的框架。如果一切正常,下一步是在应用程序中添加一个简单的菜单。

添加菜单栏

在 Swing 中创建菜单提供另一个具有自然层次结构的组件示例。创建一个 JMenuBar,它包含一个或多个 JMenu,JMenu 进而包含一个或多个 JMenuItem。

为了创建包含 Exit 菜单项的 File 菜单,在 Gwitter.groovy 中添加清单 11 中的代码:


清单 11. 在 Gwitter 中添加 File 菜单
import groovy.swing.SwingBuilder 
import javax.swing.* 
import java.awt.* 
 
class Gwitter{  
 static void main(String[] args){ 
  def gwitter = new Gwitter() 
  gwitter.show() 
 } 
   
 void show(){ 
  def swingBuilder = new SwingBuilder()  
   
  def customMenuBar = { 
   swingBuilder.menuBar{ 
    menu(text: "File", mnemonic: 'F') { 
     menuItem(text: "Exit", mnemonic: 'X', actionPerformed: { dispose() }) 
    } 
   }  
  }   
   
  swingBuilder.frame(title:"Gwitter", 
            defaultCloseOperation:JFrame.EXIT_ON_CLOSE, 
            size:[400,500], 
            show:true) { 
   customMenuBar()             
  }   
 }  
} 

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:实战 Groovy SwingBuilder

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接