JavaFX version 23 has been released. We’ve tailored down some of the most exciting parts of the release in this document.
JavaFX 23 is compiled with --release 21
and thus requires JDK 21 or later in order to run.
If you attempt to run with an older JDK, the Java launcher will exit with an error message indicating that the javafx.base
module cannot be read.
See JDK-8321603 for more information.
Clicking on the scrollbar track of virtualized controls, such as ListView
, TreeView
, TableView
, and TreeTableView
,
now scrolls by the viewport length rather than the length of the empty cell.
Furthermore, cells are no longer aligned to the top or bottom of the viewport after scrolling.
See JDK-8323511 for more information.
Keyboard scrolling key bindings, alt-ctrl-arrows
(option-command-arrows
on macOS),
have been added to virtualized controls such as ListView
, TreeView
, TableView
, and TreeTableView
to improve accessibility.
See JDK-8313138 for more information.
Exciting features:
New APIs:
textTruncated
property which indicates when the text is visually truncated in order to fit the available widthNew Features:
Improvements:
The community came together to fix 81 bugs in the last 6 months. Following are major bug-fixes that went into JavaFX 23:
KeyEvent.getCode()
is null
inside JFXPanel, affecting Swing/JavaFX integrationFinally, these are some dependency upgrades in JavaFX 23:
A more comprehensive list of all the changes in JavaFX 23 can be found on Github.
Kudos go to the fine people at Gluon who took care of the bulk of the work on JavaFX 23. Do check their JavaFX Long Term Support services.