CTOCIO IT专家网

天极传媒 比特网 | 天极网 | IT专家网 | IT商网 | 52PK游戏网 | 手机天极 | IT分众 |
IT专家网搜索

您现在的位置: IT专家网 > Web服务子站 > 技巧

JavaFX 新WebService客户端脚本语言

作者: William Brogden,  出处:TechTarget, 责任编辑: 叶江, 
2007-07-19 09:42
  JavaFX还处于开发的早期阶段。虽有一些IDE支持,但我们仍缺少正式文档……

  【IT专家网独家】在五月份召开的JavaOne大会上,Sun微系统公司宣布了一个新的产品系列JavaFX,由JavaFX脚本和JavaFX Mobile组成。JavaFX脚本语言被用来让使用Java“Swing”用户接口库来创建富用户接口变得更加容易,该用户接口可以在支持Java标准版的任何设备上运行。Sun想要将该语言作为开放源代码项目发布。需要注意人们习惯将JavaFX脚本称为JavaFX或者JFX,但是Sun还是将JavaFX Mobile放到了JavaFX产品线中。我将在这篇文章中使用JFX来指代JavaFX脚本。

  为什么又要一个脚本语言?

  如今脚本语言当然受到了很多的压力。在以前的文章中,我曾经写过Ruby、JavaScript、Python、JavaServer Pages和Linden Scripting Language等Web service客户端。这些不同的语言共同的目的是尝试着通过提供一种连接现有组件的简单方式来让复杂应用的编写变的更加容易。在JFX的情况中,它最关心的组件是Swing用户接口组件,该组件最初出现在Java标准库1.2版以补充相当原始的Java AWT工具。

  JFX基础

  这个语言支持常见的变量类型,比如字符串、整型、浮点型和布尔值。对于list和array的扩展支持的语法,在我看来非常强大。这个语言还提供了异常的创建和处理,并且引入了新的想法,即任何对象可以被抛出,不仅仅是标准的Java Throwable类型。JFX脚本还可以导入Java类、创建Java对象和调用他们的方法。

  JFX对象通过声明的方法来创建。这对于那些为“swing”Java用户接口类提供简化的class非常有用。我们在下面的完整脚本中查看一下JFX对象是如何通过声明的方式来创建的。

  import javafx.ui.*;
  Frame {
  title: "Hello World from JavaFX"
  width: 200
  height: 80
  content: Button {
  text: "Hello World"
  }
  visible: true
  }

  在这个例子中,Frame和Button是用来隐藏将在屏幕上显示出来的JFrame和JButton对象的创建细节的脚本类型。这个Frame类有名为“title”、“width”、“height”、“content”和“visible”的公共“属性”,它们都在声明中被设置了。

  消息处理问题

  JFX也有每一个图形用户接口工具都会遇到的问题。点击按钮之类的用户事件一定不能和需要长时间执行任务的事件处理线程绑定,因为在该任务执行的时候,这个接口会毫无反应。JFX提供了“do”和“do later”原语来处理这个问题。我使用一段脚本来试验JFX显示出从天气预报服务站点检索出来的数据,其中使用了“do later”。首先,我定义了一个叫做WeatherData的JFX类。这个类有两个属性和一个操作。

  import javafx.ui.*;
  import java.net.URL;
  import java.lang.StringBuffer ;
  import java.lang.System;
  import java.io.InputStreamReader;
  import java.io.BufferedReader;
  class WeatherData {
  attribute source: String ;
  attribute text: String ;
  operation update();
  }

共3页。 1 2 3 :

网友评论

笔名 
请您注意:遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。    IT专家网友拥有管理笔名和留言的一切权利。
  • 周排行榜
  • 月排行榜

邮件订阅

       
天极服务 | 关于我们 | 网站律师 | 加入我们 | 联系我们 | 广告业务 | 友情链接 | 我要挑错
All Rights Reserved, Copyright 2004-2008, Ctocio.com.cn
渝ICP证B2-20030003号 如有意见请与我们联系 powered by 天极内容管理平台CMS4i