JavaFX学习曲线日记-2:声明用户接口

我已经使用Java语言定义用户接口近十年了,当我第一次体验JavaFX脚本时便马上感到 了这两种不同环境之间的差异。尽管程序员在Java语言中使用过程式代码来定义用户接口, 而在JavaFX脚本语言中你能够使用声明语句来定义用户接口。这是两者之间最大的不同,要 适应后者的确需要花费一定的时间和精力。

为了学习这种创建UI的全新声明风格, 我决定将一个从前使用Java语言实现的应用UI移植到JavaFX脚本上。于是我挑选了一个在 Java语言中心的Swingworker教学中使用的图片浏览应用。原始应用演示了如何在JavaSE 6.0中使用Swingworker类,正因为其UI本身非常简单,所以我将它作为移植的“原料 ”。

现存的用户接口

现存的应用为用户提供了查询、列表、从Flickr 站点下载并显示图片的功能。用户可以输出查询关键字,应用调用REST API来查询Flickr以 获取匹配的缩略图片;而且用户还可以从缩略图片中进行选择,以便查看更大更细致的图片 。现存应用的查询结果如下图:

图 1. 带有查询结果的应用UI

这个UI由下列组件构成,按照从上至下的顺序:

• 主框架窗体容器

• 查询标签和查询文本输入栏

• 查询匹配标签和处理进度条

• 与简短描述(检索关键字)相匹配的缩略图列表

• 选择标签和处理进度条

• 显示被选择图片的标签

此UI 由以下常见的Swing组件构成:JFrame、Jlabel、JprogressBar、JscrollPane、JList。 JList组件具有自定义渲染器,它能够显示缩略图和相应的简短描述。

但这还是一个相当简单的UI,我们用它来研究如何使用JavaFX脚本描述UI。下一步,我 打算尝试使用JavaFX实现整个应用;但是目前,只要完成一个对现存UI的近似实现就可以了 。下面展示了一个毫无生气的UI,它代表了我使用JavaFX脚本进行UI描述来实现的最初目标 :

图 2. 应用UI

时间: 2024-09-19 11:37:05

JavaFX学习曲线日记-2:声明用户接口的相关文章

JavaFX学习曲线日记-1:探索JavaFX脚本

本文由SDN全职作者兼开发者John O'Conner编写,文中坦 率地记录了他在学习JavaFX脚本语言过程中的经历.本学习曲线日记系列将致力于介绍 JavaFX技术并指导初学者开始使用它. JavaFX脚本在2007年3月的JavaOne大会上面 世,虽然这个技术非常新鲜,但Sun和技术社区一直在努力使其每周都有引人注目的进步. 因此现在是学习这种语言的好机会,你可以马上下载并使用它.这里提供一些展现JavaFX语 言特性的漂亮的演示应用. JavaFX脚本是一种全新的脚本语言,开发者能用来

Insight一个Tcl/Tk编写的gdb的图形用户接口

Insight是一个Tcl/Tk编写的gdb的图形http://www.aliyun.com/zixun/aggregation/18676.html">用户接口,它是由在Red hat以及Cygnus的工程师写的.Red hat大方的将其捐赠给大众使用,甚至不时的提供人力继续完善它的功能.Insight项目始于1994年,至今已经有颇为成熟,它能很好的发挥大部分gdb的强大功能. 编写这个词条的目的,不是为了真的怎样教大家使用这个软件,因为这个软件已经相当的完善,不需要介绍就能轻松上手,

Redis Studio 增加命令参考页面,优化多项用户接口

Redis Studio增加命令参考页面,方便用户查阅Redis命令,并在这段时间内调整多个用户接口,以方便用户管理redis.同时Redis Studio开始完善界面设计,逐步取消原始的按键风格. Redis Studio第一个正式版已经规划,在修复完主要BUG和统一界面风格后,将释放首个正式版,敬请关注! 附最新首页: Redis Studio 是Redis桌面客户端,支持Windows操作系统. 当前发布版本为非正式版本,兼容性和功能还在不断的完善中,如果你想体验,非常期待您回馈使用体验,

J2EE和XML开发——用户接口(二)

J2EE应用用户接口开发(二)  作者 KURT A. GABRICK         DAVID B. WEISS 出处 J2EE and XML Development第五章地址 <http://www.manning.com/gabrick>本文是J2EE和XML开发用户接口的第二部分,如果对文中的例子不熟悉请参见本文的第一部分--J2EE和XML开发用户接口(一) <http://www.111cn.net/develop/article/19/19844.shtm>. 四

《面向对象的思考过程(原书第4版)》一2.3 尽可能提供最小化的用户接口

本节书摘来自华章出版社<面向对象的思考过程(原书第4版)>一书中的第2章,第2.3节,[美] 马特·魏斯费尔德(Matt Weisfeld) 著黄博文 译更多章节内容可以访问"华章计算机"公众号查看. 2.3 尽可能提供最小化的用户接口 当设计类时,通用规则是尽量不要让用户知道类内部的工作原理.为了达到这点,请遵守以下简单的规则:只提供给用户绝对需要的东西.实际上,这意味着类的接口要尽可能少.当你开始设计一个类时,先从最小化的接口开始.类的设计是迭代式的,所以随后即使你发现

新浪微博称脉脉违反开发者协议 用户接口遭封杀

中介交易 SEO诊断淘宝客 站长团购 云主机 技术大厅 凤凰科技讯 8月19日消息,针对日前新浪微博封闭职业社交app脉脉接口一事,脉脉今日二度发表声明表示,始终严格遵守现行微博开放平台开发规则,不存在任何"不正当手段",并指出新浪微博开放平台于今年7月份单方面修改过规则,称新浪微博为"用今天的游戏规则来治罪昨天的正常行为". 8月15日,新浪微博开放平台发布微博称,指责脉脉违反<开发者协议>,非法获取并使用未经用户授权的个人资料.教育和职业等隐私数据,

组合ASP.NET 2.0数据控件构建强大用户接口

asp.net|接口|控件|数据 在前面的几个专栏中,我们分别介绍了ASP.NET 2.0中的几个数据控件:GridView, DetailsView, 和FormView.本文,我将结合这几个数据控件对GridView控件做一个详细的介绍,使用户能够对每个数据行获得一个详细的了解. 主要控件 DetailsView 和 FormView控件在显示后端数据源中的单个记录时功能强大,但是强迫用户在一页中显示无数条记录这很不现实.为此,我们可以将GridView控件和DetailsView或Form

组合.NET数据控件构建强大用户接口

接口|控件|数据 在前面的几个专栏中,我们分别介绍了ASP.NET 2.0中的几个数据控件:GridView, DetailsView, 和FormView.本文,我将结合这几个数据控件对GridView控件做一个详细的介绍,使用户能够对每个数据行获得一个详细的了解. 主要控件 DetailsView 和 FormView控件在显示后端数据源中的单个记录时功能强大,但是强迫用户在一页中显示无数条记录这很不现实.为此,我们可以将GridView控件和DetailsView或FormView控件结合

操作系统的脱机用户接口

  联机命令接口又称功能级接口,是操作系统提供给用户的一类最基本的接口.在当今几乎所有的计算机(从大.中型机到微型机)操作系统中,都向用户提供了这类接口. 用户在利用联机命令接口实现与机器的交互时,先在终端的键盘上输入所需的命令,由终端处理程序接收该命令,并将它显示在终端屏幕上.当一条命令输入完毕后,由命令解释程序对命令进行分析,然后执行相应命令的处理程序.由此可见,联机命令接口应包括一组联机命令.终端处理程序和命令解释程序. 联机命令的类型有哪些? 通常,OS向用户提供了少则几十条,多则上百条