Tk vs Java / Swing
When comparing Tk vs Java / Swing, the Slant community recommends Tk for most people. In the question“What are the best cross-platform GUI toolkits?” Tk is ranked 9th while Java / Swing is ranked 16th. The most important reason people chose Tk is:
Once you understand how to style, the styling can look great.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Easy styling
Once you understand how to style, the styling can look great.
Pro Great for beginners
Easy to pick up and run with it.
Pro Easy and good looking in Mac, Linux and Windows
Pro Bindings for several languages
Bindings for Python, C, C++, Ruby, Perl, Go, Java, Haskell and more, see Languages with a Tk binding.
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 Base looks are garbage without a good amount of styling
Going with the base look for your app is a bad idea because it looks like garbage with the defaults.
Con C# support lacking
Although the Eagle Project exists, which offers Mono and .NET Core support, C# support is not standard.
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