出处:http://www.oschina.net/p/controlsfx
JavaFX 的 UI 控件集 ControlsFX
ControlsFX 开源项目旨在为 JavaFX 开发提供更多的 UI 控件和其他工具。
![](http://static.oschina.net/uploads/img/201305/08170124_mY6E.jpg)
该项目主要针对JavaFX 8.0(捆绑在JDK 8中),考虑到JavaFX中已经包含了一些控件,ControlsFX只会包含新的控件和功能,并且还有一个完善的javadoc文档。
ControlsFX包含的主要特性如下:
1. 按钮栏
这是一个按钮容器,可以自动根据底层操作系统来将按钮放置到正确的位置,开发者只需标注按钮的类型,该容器会自动完成剩余工作。
![](http://static.oschina.net/uploads/img/201305/08170124_oLIb.png)
2. 对话框
一个预建的模态对话框集合,提供了一个简单但强大的API。支持所有预建对话框类型,还可以轻松创建自定义对话框。
![](http://static.oschina.net/uploads/img/201305/08170124_Sd4o.png)
3. GridView
一个快速、虚拟化的网格容器,类似于ListView。对于图像显示来说,该控件非常实用。
![](http://static.oschina.net/uploads/img/201305/08170124_dM1l.png)
4. 范围滑块
如果你希望用户指定一个范围,可以使用该控件。用户只需在两端输入数字或拖动滑块即可。
![](http://static.oschina.net/uploads/img/201305/08170124_YVlK.png)
5. 评分控件
一个简单的评分控件,允许用户在范围内指定一个分数。
![](http://static.oschina.net/uploads/img/201305/08170124_ZoWo.png)
6. SegmentedButton(分段按钮)
如果你希望将一些有关联的按钮控件组合在一起,可以使用该控件。
![](http://static.oschina.net/uploads/img/201305/08170124_PaFz.png)
需要注意的是,ControlsFX目前只支持JavaFX 8.0 b87(捆绑在JDK8 b87版本中)及更高版本,如果你使用的是JDK 8早期版本,则需要升级。JavaFX 2.x及之前版本不受支持。
介绍内容来自 iteye
--------------------------------------------------------------------------------
出处:https://bitbucket.org/controlsfx/controlsfx/
ControlsFX is an open source project for JavaFX that aims to provide really high quality UI controls and other tools to complement the core JavaFX distribution. It has been developed for JavaFX 8.0 and beyond, and has a guiding principle of only accepting new controls / features when all existing code is at an acceptably high level, including thankless jobs like having high quality javadoc documentation. This ensure a high quality release is available at all times, with all experimental work being done in branches of the main code base.
Important note: ControlsFX will only work on JavaFX 8.0 b118 or later. If you are running on earlier versions of JDK 8, please upgrade. If you are still using JavaFX 2.x then unfortunately this library will not work for you.
Getting Started
If you want to play with the ControlsFX sample application, either clone the ControlsFX repo from bitbucket and then run the org.controlsfx.HelloControlsFX application that resides within thesrc/samples/java directory, or run the samples jar file from the command line with the following command (or a variation depending on your operating system):
java -cp controlsfx-8.0.3.jar:controlsfx-8.0.3-samples.jar org.controlsfx.HelloControlsFX
If you think you have a feature you can contribute, a bug you want to fix, or have a bug youd like to file, please direct it to the issue tracker over at the ControlsFX bitbucket website.
If you want to use ControlsFX, then youre probably wondering how to use the API that weve slaved over for hours! In your case, the best and definitive location for help is definitely our javadocs. Fear not, these are not a barren wasteland of undescribed functionality weve poured our hearts into making these javadocs full to the brim of examples, commentary and explanation. If anything is unclear to you, file a bug in our issue tracker and well do our best to update the documentation straight away!
If you have questions, you should join the the mailing list.
Another great place to explore is our sample code, all located in the src/samples directory of our code repository. Weve put a bunch of effort into making these examples something you can learn from.
Release Versioning
ControlsFX has a slightly different approach to version numbers than other projects. We use the fairly traditional x.y.z numbering system, except in the case of ControlsFX, the x.y portion is used to represent the base JavaFX version required. In other words, ControlsFX 8.0.0 is the first release of ControlsFX to work on JavaFX 8.0 and above. ControlsFX 8.1.5 (if we ever release that version) is used to represent that the release will work on JavaFX 8.1 (and not JavaFX 8.0), and is the 6th release (remember: real programmers count from zero ).
In other words, we do not differentiate between bug fix and feature releases we will clarify what the release contains on a per-release basis. Also, we will always aim to require the minimal version of JavaFX possible, but we are also not going to hold back features / bug fixes / etc if we can resolve them by moving to a newer release. Prior to moving up to a new JavaFX version we will always tag therepository and make available a download of the source and compiled code for the earlier version, for people who are unable to move to the newer JavaFX release.
Downloads
The library can be downloaded from from ControlsFX website. It is possible to download the current release (8.0.3), or also current development snapshots from Maven Central using the following dependency settings:
Maven
<dependency> <groupId>org.controlsfx</groupId> <artifactId>controlsfx</artifactId> <version>8.0.3</version> </dependency>
Gradle
dependencies { runtime 'org.controlsfx:controlsfx:8.0.3' }
Ivy
<dependency org="org.controlsfx" name="controlsfx" rev="8.0.3"/>
Sbt
libraryDependencies += "org.controlsfx" % "controlsfx" % "8.0.3"
License
ControlsFX is licensed under the 3-Clause BSD license. We are not lawyers, but our interpretation of this license suggests to us that it is business friendly, requiring only the redistribution of the 3-clause BSD license we distribute with ControlsFX. As always, I suggest you review the license with the appropriate people, rather than take the advice of software engineers. If this license is not suitable, please contact Jonathan Giles to discuss an alternative license.
--------------------------------------------------------------------------------
Useful links:
- ControlsFX homepage: http://controlsfx.org
- BitBucket repo: http://code.controlsfx.org
- Issue tracker: http://issues.controlsfx.org
- Contributor license agreement: http://cla.controlsfx.org
- This Google group: http://groups.controlsfx.org
- JavaFX 应用博客: http://www.javafxblogs.com