Preface
Since Java was first released, its user interface facilities have been a significant weakness. The Abstract Window Toolkit (AWT) was part of the JDK from the beginning, but it really wasn’t sufficient to support a complex user interface. It supported everything you could do in an HTML form, and provided free-standing frames, menus, and a few other objects, but you’d be hard-pressed to implement an application as complex as Quicken or Lotus Notes. AWT also had its share of portability problems; it relied heavily on the runtime platform’s native user interface components, and it wasn’t always possible to hide differences in the way these components behaved.
JDK 1.1 fixed a number of problems—most notably, it introduced
a new event model that was much more efficient and easier to
use—but it didn’t make any major additions to the basic
components. We got a ScrollPane and a
PopupMenu, but that was about it. Furthermore, AWT
still relied on the native components, and therefore continued to
have portability problems.
In April of 1997, JavaSoft announced the Java Foundation Classes, or JFC, which supersedes (and includes) AWT. A major part of the JFC is a new set of user interface components that is much more complete, flexible, and portable. These new components are called “Swing.” (The JFC also includes a comprehensive facility for 2D graphics, printing, and “drag-and-drop.”) With Swing, you can design interfaces with tree components, tables, tabbed dialogs, tooltips, and many other ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access