<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Javafx on PragmaticCoding</title><link>http://localhost:1313/categories/javafx/</link><description>Recent content in Javafx on PragmaticCoding</description><generator>Hugo -- gohugo.io</generator><language>en</language><managingEditor>nuno@n9o.xyz (Blowfish)</managingEditor><webMaster>nuno@n9o.xyz (Blowfish)</webMaster><copyright>© 2026 Blowfish</copyright><lastBuildDate>Tue, 10 Jun 2025 12:00:00 -0500</lastBuildDate><atom:link href="http://localhost:1313/categories/javafx/index.xml" rel="self" type="application/rss+xml"/><item><title>An Introduction to Properties</title><link>http://localhost:1313/javafx/elements/beginners-properties/</link><pubDate>Sun, 29 Sep 2024 12:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/javafx/elements/beginners-properties/</guid><description>If you are a beginner with JavaFX and are wondering, &amp;ldquo;What are all these &lt;code&gt;Property&lt;/code&gt; things anyway?&amp;rdquo;, then this is the article for you. Besides the &lt;code&gt;Properties&lt;/code&gt; themselves, we also cover the basics of using them with &lt;code&gt;Bindings&lt;/code&gt; and &lt;code&gt;Listeners&lt;/code&gt;. Read this article and you should have a good idea how to start out with JavaFX &lt;code&gt;Properties&lt;/code&gt;.</description></item><item><title>Understanding ListView</title><link>http://localhost:1313/javafx/elements/nodes/tableview-listview/listview-basics/</link><pubDate>Sun, 19 Nov 2023 12:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/javafx/elements/nodes/tableview-listview/listview-basics/</guid><description>An introduction to ListView and understanding how to use it to display something more than just lists of Strings.</description></item><item><title>Getting Started With Styling in JavaFX Using CSS</title><link>http://localhost:1313/javafx/elements/stylesheets/intro/</link><pubDate>Thu, 12 May 2022 12:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/javafx/elements/stylesheets/intro/</guid><description>This article contains all of the information you need to get started with cascading stylesheets in JavaFX.</description></item><item><title>TextFields and TextFormatter - Part 1</title><link>http://localhost:1313/javafx/elements/nodes/textformatter/part-1/</link><pubDate>Tue, 11 May 2021 12:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/javafx/elements/nodes/textformatter/part-1/</guid><description>An introduction to &lt;code&gt;TextFormatter&lt;/code&gt;, showing you how to integrate it into a &lt;code&gt;TextField&lt;/code&gt; and how to use it to convert the input from &lt;code&gt;String&lt;/code&gt; to some other kind of value. Then we&amp;rsquo;ll look at how to add a filter to prevent the user from entering invalid data.</description></item><item><title>Guide To the Observable Classes - Part II</title><link>http://localhost:1313/javafx/elements/observables/properties/observable-classes/observable-classes-typed/</link><pubDate>Thu, 22 Aug 2024 12:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/javafx/elements/observables/properties/observable-classes/observable-classes-typed/</guid><description>&lt;p&gt;This article is about the all of the typed observable classes and interfaces except the ones concerned with &lt;code&gt;List&lt;/code&gt;.&lt;/p&gt;&#10;&lt;p&gt;You&amp;rsquo;ll find that all of the relationships and structure found in the generic classes is just about exactly the same, but then there are a few extra classes and interfaces added to the hierarchy depending on the type of data that they hold. We&amp;rsquo;ll concentrate mostly on two types, &lt;code&gt;String&lt;/code&gt; and &lt;code&gt;Integer&lt;/code&gt; here, because dealing with the others would just be redundant. &lt;code&gt;String&lt;/code&gt; is typical of stand-alone types, and &lt;code&gt;Integer&lt;/code&gt; is typical of types that are included in &lt;code&gt;Number&lt;/code&gt;.&lt;/p&gt;&#10;</description></item><item><title>Using ListView Cell Layouts</title><link>http://localhost:1313/javafx/elements/nodes/tableview-listview/listview-layouts/</link><pubDate>Mon, 18 Mar 2024 00:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/javafx/elements/nodes/tableview-listview/listview-layouts/</guid><description>Looking at ListView as a scrolling region of customized layouts, not just a list of String.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="http://localhost:1313/javafx/elements/nodes/tableview-listview/listview-layouts/featureImage.png"/></item><item><title>TextFields and TextFormatter - Part 2</title><link>http://localhost:1313/javafx/elements/nodes/textformatter/part-2/</link><pubDate>Tue, 11 May 2021 12:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/javafx/elements/nodes/textformatter/part-2/</guid><description>A more in-depth look into how to build a &lt;code&gt;TextFormatter&lt;/code&gt; that can be used to turn a &lt;code&gt;TextField&lt;/code&gt; into sophisticated input field. We&amp;rsquo;ll look at designing a &lt;code&gt;TextFormatter&lt;/code&gt; that is tailored to handle fixed place decimal input, using the decimal point itself as a control to toggle between the ordinal and mantissa of the number.</description></item><item><title>TableView Basics</title><link>http://localhost:1313/javafx/elements/tableview-basics/</link><pubDate>Tue, 10 Oct 2023 12:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/javafx/elements/tableview-basics/</guid><description>What is a TableView and how do you use it? Here&amp;rsquo;s enough information to get you started with TableView the right way.</description></item><item><title>Handling TableView Cell Data</title><link>http://localhost:1313/javafx/elements/nodes/tableview/cell-data/</link><pubDate>Fri, 17 Nov 2023 12:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/javafx/elements/nodes/tableview/cell-data/</guid><description>In this article, we taka a look at how TableView handles data, the mechanism that move data in and out of TableCells, and how to work with it.</description></item><item><title>Type Specific TableColumns</title><link>http://localhost:1313/javafx/elements/custom-table-columns/</link><pubDate>Tue, 10 Jun 2025 12:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/javafx/elements/custom-table-columns/</guid><description>Generally, certain kinds of data need to be displayed in TableViews in certain, specific ways. This article will show you how to create custom TableColumns, along with matching custom TableCells, that you can use over and over in every application that you build.</description></item><item><title>JavaFX Styling Guide: TableView</title><link>http://localhost:1313/javafx/elements/nodes/tableview/styling-guide/</link><pubDate>Sun, 08 Dec 2024 12:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/javafx/elements/nodes/tableview/styling-guide/</guid><description>A comprehensive guide to styling TableView with tutorials and a reference of all of the styling selectors available.</description></item><item><title>More Beginner Mistakes</title><link>http://localhost:1313/javafx/techniques/codingstyle/beginner-mistakes-2/2024-04-15-more-beginner-mistakes/</link><pubDate>Tue, 30 Apr 2024 00:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/javafx/techniques/codingstyle/beginner-mistakes-2/2024-04-15-more-beginner-mistakes/</guid><description>&lt;h1 class="relative group"&gt;Introduction&#10; &lt;div id="introduction" class="anchor"&gt;&lt;/div&gt;&#10; &#10; &lt;span&#10; class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;&#10; &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#introduction" aria-label="Anchor"&gt;#&lt;/a&gt;&#10; &lt;/span&gt;&#10; &#10;&lt;/h1&gt;&#10;&lt;p&gt;After literally a decade writing JavaFX applications, it can be hard to remember how I thought things were supposed to be done when I started out. Thankfully, there seems to be a nearly endless supply of beginners having trouble, posting their code and giving us a glimpse into their thought processes.&lt;/p&gt;</description></item><item><title>Getting Started with Gradle in Intellij Idea</title><link>http://localhost:1313/javafx/gradle-intellij/</link><pubDate>Mon, 22 Apr 2024 00:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/javafx/gradle-intellij/</guid><description>A quick guide get started with Gradle in the Intellij IDEA IDE.</description></item><item><title>Common JavaFX Mistakes</title><link>http://localhost:1313/javafx/techniques/codingstyle/beginner-mistakes-1/</link><pubDate>Sun, 07 Apr 2024 00:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/javafx/techniques/codingstyle/beginner-mistakes-1/</guid><description>Taking a look at a JavaFX application that suffers from some very common beginner mistakes, converting it to Kotlin and sorting out the issues.</description></item><item><title>Example: Hexadecimal Editor</title><link>http://localhost:1313/examples/hex-editor/</link><pubDate>Sat, 06 Apr 2024 00:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/examples/hex-editor/</guid><description>Here&amp;rsquo;s a sample application that uses a ListView to display and edit bytes in a data file, showing the values in hex, octal, binary, decimal and as characters.</description></item><item><title>Is There a Right or Wrong Way to Program Something?</title><link>http://localhost:1313/programming/right-wrong/</link><pubDate>Mon, 11 Mar 2024 00:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/programming/right-wrong/</guid><description>Is there such a thing as a &amp;ldquo;Right&amp;rdquo; or &amp;ldquo;Wrong&amp;rdquo; when looking at different approaches to solving a programming problem? Can one approach be objectively better than another? Spoiler alert: yes, it can.</description></item><item><title>Dealing With Dialogs</title><link>http://localhost:1313/javafx/elements/nodes/dialogs/</link><pubDate>Wed, 25 Jan 2023 12:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/javafx/elements/nodes/dialogs/</guid><description>Dialogs are the basic tools for interacting with the user in a controlled way as part of a procedural flow. They are best thought of as a way to collect and return information from the user.</description></item><item><title>Introducing the Absolute Beginners Guide to JavaFX</title><link>http://localhost:1313/javafx/beginners/2022-07-05-introducing_beginners/</link><pubDate>Tue, 05 Jul 2022 12:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/javafx/beginners/2022-07-05-introducing_beginners/</guid><description>&lt;h1 class="relative group"&gt;Why?&#10; &lt;div id="why" class="anchor"&gt;&lt;/div&gt;&#10; &#10; &lt;span&#10; class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;&#10; &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#why" aria-label="Anchor"&gt;#&lt;/a&gt;&#10; &lt;/span&gt;&#10; &#10;&lt;/h1&gt;&#10;&lt;p&gt;Most of the tutorial articles I&amp;rsquo;ve written here have been of the &amp;ldquo;deep dive&amp;rdquo; nature. I try to go way beyond the information available in the JavaDocs, and to give some insight into how to get the most out of the tools that JavaFX provides. These articles tend to be on the long side, Jekyll tells me that they average about 13 minutes of reading, and there&amp;rsquo;s usually lots of code examples and pontification about clean coding and on and on.&lt;/p&gt;</description></item><item><title>How To Build a Hex Map Based Application</title><link>http://localhost:1313/javafx/projects/2022-02-09-hexmap/</link><pubDate>Sun, 06 Feb 2022 12:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/javafx/projects/2022-02-09-hexmap/</guid><description>&lt;h1 class="relative group"&gt;Introduction&#10; &lt;div id="introduction" class="anchor"&gt;&lt;/div&gt;&#10; &#10; &lt;span&#10; class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;&#10; &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#introduction" aria-label="Anchor"&gt;#&lt;/a&gt;&#10; &lt;/span&gt;&#10; &#10;&lt;/h1&gt;&#10;&lt;p&gt;Hex Maps, or hex boards are a popular platform for tabletop games, especially wargames and Role Playing Games. They are uniquely useful because hexagons fit nicely into a grid and there are 6 directions from each hexagon (or just, &amp;ldquo;hex&amp;rdquo;), compared to just 4 with a grid made up of squares.&lt;/p&gt;</description></item><item><title>How to Build a JavaFX Application That Does Something</title><link>http://localhost:1313/javafx/projects/weatherfx/</link><pubDate>Sun, 06 Feb 2022 12:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/javafx/projects/weatherfx/</guid><description>Maybe you&amp;rsquo;ve figured out how to build a working GUI that looks good. Now, how do you connect it to the rest of the world and make it do something?</description></item><item><title>Wordle in Kotlin JavaFX</title><link>http://localhost:1313/javafx/projects/wordlefx/</link><pubDate>Sat, 29 Jan 2022 12:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/javafx/projects/wordlefx/</guid><description>The original Wordle is JavaScript in a browser, here&amp;rsquo;s an implementation of it in Reactive JavaFX written in Kotlin.</description></item><item><title>Hangman in JavaFX</title><link>http://localhost:1313/javafx/hangman/</link><pubDate>Sun, 15 Aug 2021 12:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/javafx/hangman/</guid><description>How much code does it take to build a complete Hangman game in JavaFX?&lt;br&gt;It turns out &amp;hellip; Not much!</description></item><item><title>MineSweeper in JavaFX</title><link>http://localhost:1313/javafx/projects/minesweeper/</link><pubDate>Mon, 03 May 2021 12:00:00 -0500</pubDate><author>nuno@n9o.xyz (Blowfish)</author><guid>http://localhost:1313/javafx/projects/minesweeper/</guid><description>MineSweeper! Everyone&amp;rsquo;s favourite time-waster Windows game. Implemented in JavaFX showing how the reactive nature of JavaFX can be used with MVC to create a game.</description></item></channel></rss>