Java Swing (2nd Revised edition)

Java Swing (2nd Revised edition)

By: Brian Cole (author), Robert Eckstein (author), Marc Loy (author), Dave Wood (author), James Elliott (author)Paperback

1 - 2 weeks availability

£34.39 RRP £42.99  You save £8.60 (20%) With FREE Saver Delivery


Swing is a fully-featured user interface development kit for Java applications. Building on the foundations of the Abstract Window Toolkit (AWT), Swing enables cross-platform applications to use any of several pluggable look-and-feels. Swing developers can take advantage of its rich, flexible features and modular components, building elegant user interfaces with very little code. This second edition of Java Swing thoroughly covers all the features available in Java 2 SDK 1.3 and 1.4. More than simply a reference, this new edition takes a practical approach. It is a book by developers for developers, with hundreds of useful examples, from beginning level to advanced, covering every component available in Swing. All these features mean that there's a lot to learn. Even setting aside its platform flexibility, Swing compares favourably with any widely available user interface toolkit - it has great depth. Swing makes it easy to do simple things but is powerful enough to create complex, intricate interfaces. This 2nd edition includes: a new chapter on Drag and Drop; accessibility features for creating a user interface meeting the needs of all users; coverage of the improved key binding infrastructure introduced in SDK 1.3; a new chapter on JFormattedTextField and input validation; Mac OS X coverage and examples; coverage of the improved focus system introduced in SDK 1.4; pluggable Look-and-Feel coverage; coverage of the new layout manager, SpringLayout, from SDK 1.4; properties tables that summarize important features of each component; coverage of the 1.4 Spinner component; details about using HTML in components; a new appendix listing bound actions for each component; and a supporting web site with utilities, examples, and supplemental materials.

Create a review

About Author

Marc Loy is a senior programmer at Galileo Systems, LLC, but his day job seems to be teaching Java and Perl to various companies -- including Sun Microsystems. He has played with Java since the alpha days and can't find his way back to C. He is developing an interactive learning application at Galileo written entirely in Java. He received his master's degree in computer science at the University of Wisconsin-Madison, and still lives in Madison with his partner, Ron Becker. He does find time to relax by playing the piano and/or throwing darts, depending on how successful the day of teaching or programming was. Robert Eckstein, an editor at O'Reilly, works mostly on Java books (notably Java Swing) and is also Responsible for the XML Pocket Reference and Webmaster in a Nutshell, 2nd Edition. In his spare time he has been known to provide online coverage for popular conferences. He also writes articles for JavaWorld magazine. Robert holds bachelor's degrees in computer science and communications from Trinity University. In the past, he has worked for the USAA insurance company and more recently spent four years with Motorola's cellular software division. David Wood is Technical Director of Plugged In Software in Brisbane, Australia, where he works with a wonderful team producing Java custom software. In his eclectic career he has been a ship's navigator, deep sea salvage engineer, and aerospace project manager for the U.S. Navy, and consulted to Lawrence Livermore National Laboratory and Netscape. David enjoys hiking and sailing with his very patient wife and teaching his son Perl before he goes to kindergarten. David holds degrees in mechanical, electrical, aeronautical, and astronautical engineering from the U.S. Naval Postgraduate School and the Virginia Military Institute. James Elliott is a senior software engineer at Berbee, with over ten years professional experience as a systems developer. He started designing with objects well before work environments made it convenient, and has a passion for building high-quality Java tools and frameworks to simplify the tasks of other developers. Brian Cole has been working with Java since its early days and teaches the language at venues ranging from Sun Microsystems to public high school. He has a BA from Oberlin College and an M.S. from the University of Wisconsin-Madison.


Preface 1. Introducing Swing What Is Swing? Swing Features Swing Packages and Classes The Model-View-Controller Architecture Working with Swing The Swing Set Demo Reading This Book 2. Jump-Starting a Swing Application Upgrading Your AWT Programs A Simple AWT Application Including Your First Swing Component Beyond Buttons What Is an Internal Frame? A Bigger Application 3. Swing Component Basics Understanding Actions Graphical Interface Events Graphics Environments Sending Change Events in Swing The JComponent Class Responding to Keyboard Input 4. Labels and Icons Labels Working with Images Support for HTML Icons Implementing Your Own Icons Dynamic Icons The ImageIcon Class 5. Buttons The ButtonModel Interface The DefaultButtonModel Class The AbstractButton Class The JButton Class The JToggleButton Class The JToggleButton.ToggleButtonModel Class The JCheckBox Class The JRadioButton Class The ButtonGroup Class 6. Bounded-Range Components The Bounded-Range Model The JScrollBar Class The JSlider Class The JProgressBar Class Monitoring Progress 7. Lists, Combo Boxes, and Spinners Lists Representing List Data Handling Selections Displaying Cell Elements The JList Class Combo Boxes The JComboBox Class Spinners Spinner Models Spinner Editors 8. Swing Containers A Simple Container The Root Pane Basic RootPaneContainers The JFrame Class The JWindow Class The JApplet Class 9. Internal Frames Simulating a Desktop The JInternalFrame Class The JDesktopPane Class The DesktopManager Interface Building a Desktop 10. Swing Dialogs The JDialog Class The JOptionPane Class Using JOptionPane Simple Examples Getting the Results A Comparison: Constructors Versus Static Methods Using Internal Frame Dialogs with JDesktopPane 11. Specialty Panes and Layout Managers The JSplitPane Class The JScrollPane Class The JTabbedPane Class Layout Managers The SpringLayout Class Other Panes 12. Chooser Dialogs The JFileChooser Class The File Chooser Package The Color Chooser The JColorChooser Class Developing a Custom Chooser Panel Developing a Custom Preview Panel Developing a Custom Dialog 13. Borders Introducing Borders Painting Borders Correctly Swing Borders Creating Your Own Border 14. Menus and Toolbars Introducing Swing Menus Menu Bar Selection Models The JMenuBar Class The JMenuItem Class The JPopupMenu Class The JMenu Class Selectable Menu Items Toolbars 15. Tables The JTable Class Implementing a Column Model Table Data Selecting Table Entries Rendering Cells Editing Cells Next Steps 16. Advanced Table Examples A Table with Row Headers Large Tables with Paging A Table with Custom Editing and Rendering Charting Data with a TableModel 17. Trees A Simple Tree Tree Models The JTree Class Tree Nodes and Paths Tree Selections Tree Events Rendering and Editing What Next? 18. Undo The Swing Undo Facility The UndoManager Class Extending UndoManager 19. Text The Swing Text Components The JTextComponent Class The JTextField Class A Simple Form The JPasswordField Class The JTextArea Class How It All Works 20. Formatted Text Fields The JFormattedTextField Class Handling Numerics The DefaultFormatter Class The MaskFormatter Class The InternationalFormatter Class The DateFormatter Class The NumberFormatter Class The DefaultFormatterFactory Class Formatting with Regular Expressions The InputVerifier Class 21. Carets, Highlighters, and Keymaps Carets Highlighters Keymaps 22. Styled Text Panes The JTextPane Class AttributeSets and Styles The Document Model Document Events Views The DocumentFilter Class The NavigationFilter Class 23. Editor Panes and Editor Kits The JEditorPane Class Overview of the Editor Kits HTML and JEditorPane Hyperlink Events The HTMLEditorKit Class Extending HTMLEditorKit Editing HTML Writing HTML Reading HTML A Custom EditorKit 24. Drag and Drop What Is Drag and Drop? The Drop API The Drag Gesture API The Drag API Rearranging Trees Finishing Touches 25. Programming with Accessibility How Accessibility Works The Accessibility Package Other Accessible Objects Types of Accessibility Classes Added in SDK 1.3 and 1.4 The Accessibility Utility Classes Interfacing with Accessibility 26. Look and Feel Mac OS X and the Default Look-and-Feel How Does It Work? Key Look-and-Feel Classes and Interfaces The MultiLookAndFeel Auditory Cues Look-and-Feel Customization Creation of a Custom Look-and-Feel 27. Swing Utilities Utility Classes The Timer Class Tooltips Rendering Odds and Ends Event Utilities 28. Swing Under the Hood Working with Focus Multithreading Issues in Swing Lightweight Versus Heavyweight Components Painting and Repainting Creating Your Own Component A. Look-and-Feel Resources B. Component Actions Index

Product Details

  • publication date: 29/11/2002
  • ISBN13: 9780596004088
  • Format: Paperback
  • Number Of Pages: 1260
  • ID: 9780596004088
  • weight: 1570
  • ISBN10: 0596004087
  • edition: 2nd Revised edition

Delivery Information

  • Saver Delivery: Yes
  • 1st Class Delivery: Yes
  • Courier Delivery: Yes
  • Store Delivery: Yes

Prices are for internet purchases only. Prices and availability in WHSmith Stores may vary significantly