by Matthew Robinson & Pavel Vorobiev

Looking for a book on Swing with in-depth coverage of the how’s and whys? Then Swing by Matthew Robinson and Pavel Vorobiev is it.

The authors use the first few chapters to cover an overview of Swing with an emphasis on what goes on behind the scenes. This may seem intimidating to those less familiar with Swing, but it does prove to be an excellent introduction to the concepts of Swing. The authors then turn their attention to the basics of Swing, including frames, panels, layout managers, splitpanes, scrolling panes, combos and list boxes, dialogs, progress bars, sliders, and scroll bars, buttons and labels, among others.

Next are advanced topics including the use of layered panes to enhance interfaces, MDI, text, internal frames and a comprehensive discussion on the complex and often complicated topic of Trees and Tables. Developers looking for the “Hello World” application won’t find it here. In its place are exhaustive coding samples with detailed explanations. The authors take great care to discuss the importance of threads in Swing, focusing on multi-threading and how to build thread-safe methods. Throughout the book the authors also make it a point to include UI delegation examples and when to use the default implementations and when to override them. The last couple of chapters focus on the special topics of printing and a brief introduction to Java2D.

Overall this is an excellent book, and I would recommend it for the intermediate to advanced Swing developer. (AnnMarie Ziegler - GreenHorn, September 2001)
More info at Amazon.com || More info at Amazon.co.uk

The JFC Swing Tutorial
by Kathy Walruth, Mary Campione

This is a volume in the series of very well written tutorials from the horse's mouth, i.e., very qualified Sun technical writers. The book flows well, the examples are thorough and meaningful. A solid basic knowledge of Java will get you through this book. You can really pick-and-choose items of interest, you do not really need to read it end-to-end. A CD-ROM is included. You cannot do better (my opinion) than to start out with this book. (Joseph B Cohen - Greenhorn, September 2002)
More info at Amazon.com || More info at Amazon.co.uk

Java 3D Programming
by Daniel Selman

The Java 3D API from Sun provides an object oriented abstraction around OpenGL and DirectX functions. Sun provides a fairly good introduction to Java 3D in their documentation. However, it can be difficult to find more advanced information on Java 3D as some of the best information can only be found in newsgroups. This book provides the information that anyone working with Java 3D absolutely needs. The author has covered all the bugs, workarounds, pitfalls, design problems etc. that aren't found in the Sun documentation. Starting with the basics of 3D graphics programming, the book moves quickly on to the heart of the Java 3D API, the Scenegraph. The author does a good job of explaining this key class and how to use it to create 3D scenes. The book then moves on, to explain creating of geometric shapes, defining light sources, creating textures, attaching behavior to objects, interacting with objects, and much more. Each chapter contains code samples highlighting the topics of that chapter. As a novice to Java 3D, I was overwhelmed for a little while but the code samples and the author's excellent explanations of the code kept me from becoming lost. This is definitely a book that should be read in front of the computer while working on the examples. Any experienced Java developer (even if you have no experience in graphics programming) who is interested in developing 3D games or scientific or architectural 3D applications should get this book. (Thomas Paul - Sheriff, April 2002)
More info at Amazon.com || More info at Amazon.co.uk

Core Swing: Advanced Programming
by Kim Topley

This book gets into the details behind some of the swing components. It covers editors, highlighters, documents, renderers and drag and drop.

The author does a good job of getting behind the scenes explaining and showing with code real world examples. There are examples of validating textfields, formatted textfields, using HTML in JEditorPane, JTables and drag and drop.

This is definitely not a beginner book. You must have a good understanding of Swing. The only drawback to the book was the long explanations of what not to do (told at the end of the explanation). (Paul Stevens - Bartender, November 2001)
More info at Amazon.com || More info at Amazon.co.uk

Professional Java Custom UI Components
by Kenneth F. Krutsch, David S. Cargo, Virginia Howlett

Professional Java Custom UI Components takes the reader through a planning, design, and implementation philosophy for creating custom user interface components. Hints and tips are discussed, giving important insight for creating components. The authors concentrated on the basic principles of design without creating another reference book. Also, rather than laying out all the nitty gritty code detail, the most interesting portions are highlighted and discussed. A handful of custom components are built to demonstrate these principles. Both the source code and documentation can be downloaded from WROX, and are copyrighted by Krutsch Associates, Inc.

The book tour starts with a discussion of the user interface design, the importance of a good interface that is intuitive to use, and the attention to detail required for a UI component. The authors take the reader through the planning and implementation of a toggle switch and LED component, implementing the event model, specifying the parent container interaction, and rendering strategy. Many tips are provided so that the reader may avoid common pit falls. More complex components are discussed and implemented.

The book ends with an overall software development process and component maintenance. Until this point, the focus has been the “how” of building custom components, now the discussion shifts into a larger context. The authors stress the importance of both before and after the initial implementation.

I recommend reading this book for anyone designing and implementing custom UI components. (Bill Nicolai - GreenHorn, September 2001)
More info at Amazon.com || More info at Amazon.co.uk

Definitive Guide to Swing for Java 2, Second Edition
by John Zuklowski

Sample Chapter
This book gives a very exhaustive analysis of various Swing components with explanations of most classes used. The author describes the various LnF for each component. In my view this book does a very detailed analysis of the components, their drawbacks and workarounds. The author also depicts the use of components with appropriate examples and illustrates the components in the three most common LnF's. Available properties and their use for each component can be found very useful. Each class description includes an elaborate explanation of the various Constructors, Properties, Listeners where applicable and the appropriate Data Models with UML diagrams. The chapters also provide some explanation on how additional Data Model customization and/or the LnF customization can be achieved. As the chapters progress, the author also identifies the differences between the Swing component and its equivalent AWT component.The side notes and tips highlight some of the drawbacks with appropriate workarounds. Also included are some future-looking statements about new behavior as applicable in Swing 1.3. The new additions in Swing 1.3 are detailed in the Appendix. I would be lying if I don't mention that there are some typos in the book. Overall I think this is a very good resource on Swing. (Madhav Lakkapragada - bartender, June 2001)
More info at Amazon.com || More info at Amazon.co.uk

Java 2D Graphics
by Jonathan Knudsen

Sample Chapter

Java 2D used to be a separate library and is now included in the java core libraries. It adds a lot of functionality and can be hard to work with unless you have a guide. This book is the best of the 2D books out there. I tried to do 2D without this book and did a lot of struggling. The book made things seem pretty simple.(trailboss Jan 2000)
More info at Amazon.com || More info at Amazon.co.uk

Java Swing
by Robert Eckstein, Marc Loy, and Dave Wood

Sample Chapter
For visual programming, Swing is a vast improvement over the AWT. Using Swing you can create virtually any user interface. At the same time, Swing is much more complex and contains far more components than the AWT. This book provides an in-depth introduction into the complexities of Swing. The authors start with a discussion of some of the features of Swing and the Model-View-Controller architecture which helps to make Swing so much more powerful than the AWT. The authors then discuss some of the simpler Swing objects (JLabel, JButton) leading us into a deeper understanding of the Swing architecture and preparing us for the more complex objects that follow. Each Swing class (JLabel, JInternalFrame, JDialog, JTree, and more) is explained in detail with numerous examples for each class. As the topics become more complex, the authors spend more time on the topic and provide more examples. The authors spend 6 chapters explaining the Swing text framework and make this complex topic almost simple to understand. The authors are not content to merely explain how to use the Swing classes but they spend time showing us how to create our own objects derived from the Swing classes. Java Swing is a huge book (more than 1,200 pages), especially by O'Reilly standards, but there are no pages wasted on a "quick reference". The authors have provided us with a well written, complete, easy to understand, and ultimately indispensable guide to Java Swing. (Thomas Paul - bartender, March 2001)

Widely considered the best book on Swing. With the help of this book, I've made a mountain of my own lightweight components and have exploited a great deal of Swing. I have another Swing book that came out before this one did, but it just gathers dust now.(trailboss Jan 2000)
More info at Amazon.com || More info at Amazon.co.uk

Pure JFC Swing
by Dr. Satyaraj Pantham
Although "Pure JFC Swing" is 800 pages, more than half the book is a reference to the Swing API. As a reference it is mostly useless. The pages are not labeled and the classes are listed by package so it is almost impossible to find a class without using the index. Each class contains only the signature of each method with no explanation as to how the method might be used which limits its usefulness. The Sun online API is a much better reference. The first half of the book is an introduction to Swing and this is what makes the book worth its very reasonable price. The book starts off with a nice introduction to Swing and the MVC architecture. The author then discusses some of the basic Swing classes. This section of the book features a good discussion of panes but like most of this section it leaves you wanting more. The author has an excellent writing style and gives good, clear examples for each of the classes but each topic ends too soon. Also, too many topics are not included in this book. This book could have been an excellent book. If the publisher had abandoned the idea of supplying a reference and had let Dr. Pantham have the entire 800 pages, this would have been a much better book. If you plan on doing a little work with Swing and you're looking for a light introduction, this book may serve that purpose. (Thomas Paul - bartender, March 2001)
More info at Amazon.com || More info at Amazon.co.uk

Java Foundation Classes
by Matthew Nelsdon

I used this book when I started with Swing in early 1998. It was okay at helping with transitioning from AWT to Swing, but I didn't care for it as a reference.(trailboss Jan 2000)
More info at Amazon.com || More info at Amazon.co.uk

Couldn't find the book you wanted? Click here for some additional books that we have not reviewed yet.