# JavaFX Examples (Portable GUI Programming Using JavaFX)

Here a few links (as of 2016-12-06) for additional JavaFX information and JavaFX resources:

- Marco Jakob's Tutorials on JavaFX (Rexx Solution in fxml_03 below)
- Interesting (Additional) Open Source JavaFX Controls
- JavaFX Scene Builder (Open Source)
- Oracle's Brief FXML Format Description
- Oracle's JavaFX CSS Reference
- www.java2s.com's JavaFX Tutorials with Great Nutshell Examples
- Oracle JavaFX Overview, I
- Oracle JavaFX Overview, II
- Oracle Tutorials on JavaFX (SceneGraph)
- Marco Jakob on JavaFX Dialogs

Hint: if you wish to look at the ooRexx code with syntax highlighting, then you can use the free and open-source editor `"[g]vim"`, which is available for practically all platforms and can be downloaded from its homepage at http://www.vim.org/.

. <directory> (List of this directory)
  Display all of this directory's files and directories.
.. <directory> (List of parent directory)
  Display all of the parent directory's files and directories.
oodialog <directory> (List of oodialog directory)
  Display all of the oodialog directory's files and directories.
fxml_01/ <directory>
  A simple cross-platform (running unchanged on Windows, Linux and MacOSX!) Rexx application taking advantage of an FXML document to declare and run a portable JavaFX GUI. The standalone version of this Rexx application can be found in javafx_01.rxj.
fxml_02/ <directory>
  A cross-platform (running unchanged on Windows, Linux and MacOSX!) Rexx application taking advantage of an FXML document to declare and run a portable JavaFX GUI, demonstrating automatic attribute fetching and automatic multilingual support (English, German texts), displaying the content of the javax.script.ScriptScope's Bindings on each press of the push button. The standalone version of this Rexx application can be found in javafx_02.rxj.
fxml_03/ <directory>
  An application demonstrating additional JavaFX controls, including drag and dropping an image, animating a progress bar and different kinds of typical GUI controls.
fxml_04/ <directory>
  A HTML editor in a few lines of Rexx.
fxml_05/ <directory>
  A list of employees at WU, demonstrating how to use opensource and free add-on JavaFX GUI controls.
fxml_06/ <directory>
  Demonstrating how to use a JavaFX ProgressBar in a nutshell.
fxml_07/ <directory>
  Demonstrating a simple JavaFX mortgage calculator in a nutshell.
fxml_20/ <directory>
  Advanced: demonstrates all major features of a JavaFX ListView in a nutshell.
fxml_25/ <directory>
  Advanced: demonstrates all major features of a JavaFX TableView in a nutshell.
fxml_26/ <directory>
  Advanced: demonstrates all major features of a JavaFX TableView in a nutshell and shows how to use ComboBox controls in a TableColumn.
fxml_27/ <directory>
  Advanced: demonstrates all major features of a JavaFX TableView in a nutshell. In addition it shows how to implement TableCell in Rexx for all columns, such that an "auto-commit" becomes possible (commiting cell edit changes in addition when moving away with the TAB key or changing focus with the mouse). By default TableView only commits changes when the ENTER key gets pressed.
fxml_99/ <directory>
  Advanced: a comprehensive application implementing a full-fledged, cross-platform (running unchanged on Windows, Linux and MacOSX!) address book application in ooRexx!
javafx_01.rxj
  This is the standalone, cross-platform (running unchanged on Windows, Linux and MacOSX!) JavaFX-Rexx program of fxml_01/ that sets up the GUI, the event handler and starts the JavaFX application. All formatting and positioning needs to be done in code. An alternative is to use a FXML JavaFX definition file for formatting and positioning purposes. This program corresponds to the application in "`fxml_01/`", except for the used colors.
javafx_02.rxj
  This is a standalone, cross-platform (running unchanged on Windows, Linux and MacOSX!) JavaFX-Rexx program of fxml_02/ that sets up the GUI, the event handler and starts the JavaFX application. All formatting and positioning needs to be done in code. An alternative is to use a FXML JavaFX definition file for formatting and positioning purposes. This program corresponds to the application in "`fxml_02/`" and uses its language translation properties files for some of the labels.
javafx_dialog_demo.rxj
  A Rexx program demonstrating the use of JavaFX dialogs from JavaFX applications. Also demonstrates how to use the JavaFX dialogs from pure awt/swing applications using the Java class `"javafx.embed.swing.JFXPanel"` to initialize the JavaFX toolkit and using the Rexx class `"FxGuiThread"` (defined in `BSF.CLS`) to dispatch the dialog on the FX Application Thread.
  Inspired by http://code.makery.ch/blog/javafx-dialogs-official/.
javafx_update_GUI-from-non-GUI-thread.rxj
  A JavaFX GUI application that demonstrates how to update a JavaFX GUI object (a Label) from a non FX Application (non-GUI) thread using the methods of the public class `.FxGuiThread` defined in `BSF.CLS`.
javafx_property_binding.rxj
  A Rexx program demonstrating the use of JavaFX properties.

Rony G. Flatscher, 2017-03-22, 2017-11-19, 2018-07-19, 2025-08-28, Wien/Vienna, Austria, Europe