FLTK vs Java / Swing
When comparing FLTK vs Java / Swing, the Slant community recommends FLTK for most people. In the question“What are the best cross-platform GUI toolkits?” FLTK is ranked 12th while Java / Swing is ranked 16th. The most important reason people chose FLTK is:
It's simple design and lack of more advanced C++ features makes it easy for beginners.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Simplicity
It's simple design and lack of more advanced C++ features makes it easy for beginners.
Pro Fast
Well-designed widgets, coded with careful attention to rendering/execution speed.
Pro Stable
FLTK code developed more than 10 years ago still compiles and runs perfectly, without changes.
Pro Lightweight
Uses a limited and lightweight design and restricts itself to solely GUI functionality. Because of this restriction, the FLTK hello world example is only about 100 KiB.
Pro GUI designer
Fast Light User-Interface Designer (FLUID) included.
Pro Part of Java
Swing is part of the Java API.
Pro Very good and powerful API
E.g. separate models.
Pro Powerful controls
E.g. JTable which works fine on every platform with very large row counts, e.g. 100.000+.
Pro Several look and feels available
Pro Easy to use
Drag and drop utility.
Cons
Con Can be too simple for some projects
FLTK offers far fewer widgets than most other toolkits.
Con Does not look like a native application
Because it uses non-native widgets, it doesn't look like a native application on any platform.
Con Only for JRE-based languages
Con Bugfixes rely on Oracle
Con No real native look
Though the importance of the native look seems to have dropped the last years by the raise of in-browser-applications.
However, you can achieve native look and feel using UIManager.systemLookAndFeelClassName.
Con Severely deprecated
The system is ancient and Oracle has dropped support for it in favor of JavaFX
