JavaFX教程

文章目录

  • 说明
  • 为什么选择JavaFX?
  • JavaFX特性
    • 第三方JavaFX资源
  • JavaFX应用
  • 为什么选择桌面应用程序?

说明

由于JavaFX的中文资料匮乏,我在寻找教程时发现了此英文资料,出于扩展JavaFX中文社区的目的,我翻译了Jakob Jenkov的JavaFX教程,由于我无法登录国外网站,所以无法与作者取得联系,如有侵权行为,请立即联系我,我会将内容删除。


JavaFX教程_第1张图片
JavaFX是Java的图形用户界面工具包(GUI的缩写)。JavaFX使得在Java中创建桌面应用程序和游戏变得更加容易。这个JavaFX教程是一个多页面教程,介绍了JavaFX的核心特性。请查看页面左侧的菜单,以查看此JavaFX教程涵盖的所有主题(在移动设备上,请检查底部导航栏中的Trail目录)。此外,本页面下方还有一份详尽的列表。

为什么选择JavaFX?

JavaFX具有成为出色GUI应用平台的几个原因。首先,Java仍然是全球最流行的编程语言之一,拥有大量的标准类以及由Java开发者社区开发的丰富开源工具包。

其次,JavaFX可以在以下操作系统和设备上运行:

  • Windows
  • Linux
  • Mac
  • iOS
  • Android/Chromebook
  • Raspberry Pi

这使得JavaFX成为一个多功能的跨操作系统和设备的应用工具包。

第三,JavaFX提供了丰富的GUI控件,而开源工具包则进一步增加了整体生态系统中的工具数量。

JavaFX特性

JavaFX配备了大量内置(built-in)的GUI组件,如按钮、文本字段、表格、树、菜单、图表等等。可以通过CSS 以及/或者 编程方式对JavaFX进行样式化。JavaFX自带一个内置的图表库,可用于创建简单的图表。JavaFX支持2D和3D图形。JavaFX还拥有一个WebView,可以显示现代Web应用程序。

以下是JavaFX中更完整的概念、组件和特性列表:

  • Core
    • Stage
    • Scene
    • Node
    • Properties
    • FXML
  • Layout
    • Region
    • Pane
    • HBox
    • VBox
    • FlowPane
    • TilePane
    • GridPane
    • Group
    • StackPane
    • AnchorPane
    • BorderPane
  • Basic Controls
    • Label
    • Button
    • MenuButton
    • SplitMenuButton
    • ButtonBar
    • ToggleButton
    • RadioButton
    • CheckBox
    • ChoiceBox
    • ComboBox
    • ListView
    • TextField
    • PasswordField
    • TextArea
    • ImageView
    • DatePicker
    • ColorPicker
    • Slider
    • Tooltip
    • Hyperlink
    • ProgressBar
    • ProgressIndicator
    • MenuBar
    • ContextMenu
    • Separator
    • TableView
    • TreeView
    • TreeTableView
    • HTMLEditor
    • Pagination
    • FileChooser
    • DirectoryChooser
    • Spinner
  • Container Controls
    • Accordion
    • TitledPane
    • TabPane
    • SplitPane
    • ScrollPane
  • Web
    • WebView
    • WebEngine
  • Charts
    • PieChart
    • BarChart
    • StackedBarChart
    • ScatterChart
    • LineChart
    • AreaChart
    • StackedAreaChart
    • BubbleChart
  • Other Concepts
    • Fonts
    • TextFormatter
    • Dialogs
    • Color
    • 2D Shapes
    • 3D Shapes
    • Effects
    • Transformations
    • Animation
    • Canvas
    • PixelBuffer
    • Drag and Drop
    • Audio
    • Video
    • Print API
    • High DPI resolution screen support
    • Concurrency in JavaFX

第三方JavaFX资源

有一些很酷的第三方资源可用。我在这里列出了其中一些:

  • JavaFX Drift:为JavaFX提供OpenGL等支持。可以无缝集成到场景图中。

  • ControlsFX:为JavaFX提供额外的UI控件。

  • GemsFX:为JavaFX提供额外的UI控件。

  • TilesFX:为JavaFX提供额外的UI控件。

与JavaFX相关的资源:

  • Skija:为Java提供快速的2D图形,使用硬件加速图形技术。
    这些第三方资源可以为JavaFX提供更多功能和扩展,使开发者能够更灵活地构建丰富和创新的GUI应用程序。

JavaFX应用

以下是一些使用JavaFX制作的公开可用应用程序,这样你就可以亲自看到JavaFX的潜力:

  • DBFX - 一个免费的数据库管理GUI应用程序(管理控制台)。

为什么选择桌面应用程序?

为什么本地应用在移动设备上更受青睐,而Web应用在桌面电脑上更受欢迎?为什么本地应用在这两种类型的设备上都没有那么受欢迎?

你可能感兴趣的:(JavaFX,javafx)