JavaFX

JavaFX Tip 32: Need Icons? Use Ikonli!

Motivation I have been coding JavaFX applications and libraries since 2013 and one thing they all had in common was that I needed to find good icons / graphics that I could use for them. As a former Swing developer I started by using image files, GIFs or PNGs. Normally I would license a library like the "O-Collection" from IconExperience (www.incors.com). But soon it became apparent to me that using image files is too painful. Just imagine for a moment that you want to support different pseudo states of your nodes (e.g. "hover", "pressed", "focused"). You end up with [...]

By |2021-02-18T13:42:23+01:00March 11th, 2020|JavaFX, Tips & Tricks|2 Comments

OpenJFX 13 Interview

I have given another interview to JaxEnter regarding OpenJFX 13. Read it here: German: https://jaxenter.de/openjfx-13-javafx-13-lemmermann-86883 English: https://jaxenter.com/openjfx-13-interview-dirk-lemmermann-161967.html

By |2019-10-30T15:47:56+01:00October 30th, 2019|JavaFX|0 Comments

JavaFX / OpenJFX 11 Interview Series

I was recently interviewed by jaxenter.com regarding JavaFX 11 / OpenJFX. The interview was done together with Johan Vos, Jonathan Giles, and Donald Smith. The interview was published in three parts. They can be found here: Part 1: JavaFX 11: First impressions, a look back and a leap forward Part 2: JavaFX 11: What’s changed, and what’s stayed the same Part 3: JavaFX 11 under the microscope: “There’s a lot more going on with JavaFX than anyone gives it credit for”

By |2021-02-18T13:42:24+01:00October 2nd, 2018|JavaFX, Speaking|0 Comments

JavaFX Days Zurich – Sessions

The holidays are over, time to get serious, time to fill the session catalogue for the JavaFX Days Zurich (Website). We managed to convince some of the best JavaFX experts to come to Switzerland and to show us the things they work on or work with. So without further ado here is a list of the currently scheduled sessions:   JavaFX State of the Union Wolfgang Weigend, Oracle Corp. The current state of JavaFX UI development will be explained from the perspective of Oracle, with an inventory of existing development resources and the continuation of JavaFX in a free [...]

By |2021-02-18T13:42:24+01:00August 27th, 2018|Java, JavaFX, Speaking|0 Comments

JavaFX Tip 31: Masking / Clipping / Alpha Channel

Selection Strip I recently had to implement a custom control that lets the user select a single item out of a list of items. This "SelectionStrip" control had to lay out the items horizontally and in case of too many items allow the user to scroll horizontally left and right. The control was to be used in a space-constrained area, so the buttons for scrolling should only appear when needed. They also should not waste any additional space when showing. So I decided to place them on top of the control on the left and right sides. All of [...]

By |2021-02-18T13:42:24+01:00June 29th, 2018|JavaFX, Tips & Tricks|2 Comments

JavaFX Tip 30: ScrollPane with DropShadow

In one of my projects I recently noticed that it was hard for the user to see whether the content of a ScrollPane instance was currently scrolled or not. One way of making this more clear is to add a drop shadow to the top of the scroll pane. This is also something suggested by Google's Material Design. So I gave it a try. In my solution I simply added a region to the ScrollPane and when laying it out I am moving it out of the viewport bounds of the ScrollPane so that only the shadow effect applied [...]

By |2021-02-18T13:42:24+01:00June 19th, 2018|JavaFX, Tips & Tricks|0 Comments

JavaFX Tip 29: Make Layouts Ignore Invisible Nodes

Back in the days when I was still implementing UIs in Swing I used to be a big fan of MigLayout ("one layout manager to rule them all", right Mikael?). One of the features I really liked was the possibility to define different behaviors when a component became invisible. MigLayout allowed me to either preserve the space that the now invisible component occupied or to make it available for the still visible components. So how can I do this in JavaFX? Even though the answer is quite simple it is not obvious by looking at the API. JavaFX uses [...]

By |2021-02-18T13:42:24+01:00June 18th, 2018|JavaFX, Tips & Tricks|0 Comments

CalendarFX goes Open Source

I am happy to announce that CalendarFX has found a new home on GitHub. As of today it is no longer a commercial product but an open source project. Over the last two years I have noticed that the developer community has resisted to use CalendarFX for their projects as the source code was not freely available. So now that CalendarFX has been released into the wild I am hoping that it will live a long and happy live.

By |2021-02-18T13:42:24+01:00October 19th, 2017|CalendarFX, JavaFX|1 Comment

New kid on the blog: FormsFX

I am very happy to announce the immediate availability of FormsFX, a framework for (surprise!) creating forms in JavaFX. FormsFX is the result of a student project at the "Fachhochschule Nordwestschweiz" (FHNW) in Switzerland. The project was initiated and sponsored by me. I believe that the result of this project is of high quality and that other projects should be able to benefit from it, hence I am contributing it as an open source project to the Java community today. The source code and documentation can be found on GitHub at this location: https://github.com/dlemmermann/formsfx A binary distribution (JAR file) can [...]

By |2021-02-18T13:42:24+01:00September 12th, 2017|JavaFX|0 Comments

JavaFX Tip 28: Pretty List View

When I look at the list views on my mobile phone I always notice that they display their scrollbar (normally a vertical one) very differently than JavaFX does. The same is true for applications running on MacOS X. Below you can see a snapshot of Apple's calendar app. You will notice that the scrollbar is actually on top of the content. In JavaFX the scrollbar would be placed to the right of the view. However on mobile devices in order to save space the scrollbar shows up on top of the content. So obviously I wanted to see how [...]

By |2021-02-18T13:42:24+01:00September 7th, 2017|JavaFX, Tips & Tricks|3 Comments