A hands-on guide to custom controls, skins, window chrome, runtime theme switching, and Fluent Design materials — for desktop developers who want their app to feel current.
This book is for the developer who has just discovered that no existing control does quite what the
project needs — and for the one who has found out that some default controls resist being restyled from
CSS alone.
It will guide you through building your own UI control library. If you can imagine an ambitious or
unconventional UI control, this book will be your main resource for building it.
Table of contents
ChangeListeners or
declaring bindings on properties.
layoutChildren() works and how to perform clipping
operations on nodes.
-fx-my-rule.
ListView,
TableView, and TreeView.
Mica,
Acrylic, and Reveal, and shows you how to build your own backdrop-blur
mechanism.
Testimonials
The chapter on runtime theme switching alone paid for the book. I finally understand why my old stylesheet swaps used to flicker.
I went in for the skinning chapters and stayed for the custom Control/Skin architecture. My internal dashboard controls are unrecognizable now.
Clear, code-first, and honest about what's optional. The Fluent chapter on Mica and Acrylic is the best explanation of backdrop blur in JavaFX I've found anywhere.
FAQs
Control/Skin/CSS
source, not fragments — you can drop each one into your own project and adapt it directly.