JavaFX Missing Features Survey: Performance & Quality

I take it as a good sign that the categories "Performance" and "Quality" have not seen a lot of submissions in the "Missing Features Survey". Performance In the survey the performance of JavaFX was compared with the performance of Swing and people noticed that JavaFX is slower than Swing. I personally have yet to find a use-case where that is true but I do believe that they can be found, however it should be noted that JavaFX also provides a much better coding experience based on a modern API and architecture. JavaFX supports property bindings and CSS styling. These [...]

By |2021-02-18T13:42:26+01:00April 12th, 2016|JavaFX|4 Comments

New CalendarFX View: MonthGridView!

Me and my team have recently begun work on a new view for CalendarFX with the initial goal to display a whole year in vertical columns. The name of the view is MonthGridView. As usual the goal has changed slightly while coding. The view is now capable of displaying any number of months with extra months added in front or in the back. Now, for example, the developer can choose to display six months (a semester) with one month "padding" in front and one month in the back. The following screenshot shows an entire year with no padding. In [...]

By |2021-02-18T13:42:26+01:00April 6th, 2016|CalendarFX, JavaFX|5 Comments

Shadow Fields vs. Property Accessor Interface

Carl Dea recently followed up on a blog post of mine called Save Memory! Use Shadow Fields for Properties. In his blog he suggested the use of an interface called "Property Accessor" to eliminate the heavy use of boilerplate code that is needed in order to use  shadow fields. Carl also mentioned that he hasn't tested his approach with a lot of data and that he or some reader might follow up with a performance comparison. So here it comes. I wrote a small test application that implements the three strategies that Carl mentions in his post: standard properties that are instantiated [...]

By |2021-02-18T13:42:26+01:00April 4th, 2016|Java, JavaFX, Tips & Tricks|2 Comments

CalendarFX In Action: SkedPal!

If you are interested you can now see CalendarFX live in action. As of version 1.7 the AI scheduling software SkedPal has replaced their Swing-based calendar (MigCalendar) with CalendarFX 1.3 for JavaFX 8. The result is a much more consistent look and feel and user experience.    

By |2021-02-18T13:42:26+01:00April 1st, 2016|CalendarFX, JavaFX|0 Comments

JavaFX Tip 23: Save Memory! Shadow Fields for Properties.

Properties and property bindings introduced in Java 8 are extremely useful programming concepts. They are especially useful when you are developing user interfaces. In fact they are so useful that developers have fallen victim to the idea that everything should be a property instead of a primitive. Unfortunately they easily forget that properties such as SimpleLongProperty are much bigger objects than standard types such as Long. And of course they are much bigger than primitive data types such as long. In one of my current projects pretty much every model object used by the client is composed of properties. For many of these [...]

By |2021-02-18T13:42:26+01:00March 30th, 2016|Java, JavaFX, Tips & Tricks|21 Comments

CalendarFX 1.3 Released Today!

I have released a new version of CalendarFX today. Version 1.3 contains several small bug fixes, important memory leak fixes, and most importantly a big fix for correctly displaying different "first day of week" (e.g. Mondays in Germany, Sundays in the US). The new release can be downloaded as usual at Please take it for a spin and let me know what you think. CalendarFX is a UI framework for JavaFX 8. It contains several custom controls for visualizing standard calendar information (day, week, month, year view). CalendarFX is a commercial framework that is available for licensing.

By |2021-02-18T13:42:26+01:00March 20th, 2016|CalendarFX, JavaFX|4 Comments

JavaFX Missing Features Survey: Table View

The TableView (and TreeTableView) of JavaFX has won the prize for being the control that was mentioned the most in my recent "JavaFX Missing Features" survey and also in many follow-up discussions (including and especially the guys in our Zurich JavaFX Meetup group). I guess one of the reasons is the simple fact that almost every application needs a table view. The two most requested features / improvements for the TableView were freezing rows / columns and better editing support. Freezing Rows / Columns Freeze / lock rows - the ability to have one or more rows to stay at [...]

By |2021-02-18T13:42:26+01:00February 3rd, 2016|Java, JavaFX|9 Comments

FlexGanttFX 1.4.0 Released!

I am very happy to announce that I have released version 1.4.0 of FlexGanttFX for JavaFX. This release contains bug fixes and small improvements. I am glad to say that FlexGanttFX has proven itself in the field and is operational in various large enterprise applications. Some of its more prominent users are: Emirates Airlines European Broadcasting Union Airbus PSI PolandThe following are a couple of screenshots from these applications. PSI Logistics European Broadcasting Union Emirates Airlines MINT Software Systems

By |2021-02-18T13:42:26+01:00February 3rd, 2016|FlexganttFX, JavaFX|0 Comments

JavaFX: TouchGesture Memory Leak?

In one of my projects I was fighting with a memory leak the last couple of days (yes ... "couple") and I came to the conclusion that there might be an issue related to touch / scroll gestures. In the sample below I have two buttons. The first one creates a list view with one thousand rows, the second one removes it. I made the following observations: when I click on "create" and immediately on "destroy" then everything will be garbage collected. when I click on "create" and use the scrollbar to scroll down and then click on "destroy" [...]

By |2021-02-18T13:42:26+01:00January 29th, 2016|JavaFX|5 Comments