Creating a GUI with JFC/Swing

Total Page:16

File Type:pdf, Size:1020Kb

Creating a GUI with JFC/Swing Creating a GUI with JFC/Swing The JavaTM Tutorial Search Start of Tutorial Feedback Form Examples Index Trail: Creating a GUI with JFC/Swing The Creating a GUI with JFC/Swing trail tells you how to create graphical user interfaces (GUIs) for applications and applets, using the Swing components. The Swing components, which are part of the JavaTM Foundation Classes (JFC), can be used with either JDKTM 1.1 or the JavaTM 2 platform. Note: This trail does not tell you how to use the AWT components. If you need to write a JDK 1.0 program or a 1.1 program that doesn't use Swing components, please download the old UI trail, Creating a User Interface (AWT Only). This trail is available as a book, The JFC Swing Tutorial . Besides having the usual advantages of a book (such as portability and readability) this 950-page tome contains a CD that has API documentation, the JFC 1.1 and JDK 1.1 releases, the latest available releases of the Java 2 SDK, and lots of other goodies. A shorter, simpler introduction to using the Swing components is published in the book The Java Tutorial, 3rd Edition . You can find it online here: User Interfaces that Swing: A Quick Start Guide. Getting Started with Swing is a quick start lesson. First it gives you a bit of background about the JFC and Swing. Then it tells you how to compile and run programs -- both applications and applets -- that use Swing components. Finally, it walks you through the code for a simple program. Swing Features and Concepts gives you the information you need to be able to use Swing components effectively. For example, it tells you how Swing programs display their GUIs, how they handle events such as mouse clicks, and how they can use features http://java.sun.com/docs/books/tutorial/uiswing/index.html (1 of 3) [10/28/2001 1:51:25 PM] Creating a GUI with JFC/Swing such as borders to help with layout. It ends with a discussion of how the features and concepts are used by a real program. Using Swing Components tells you how to use each of the Swing components -- buttons, tables, text components, and all the rest. Using Other Swing Features tells you how to use actions, borders, icons, and timers. It also helps you to create multithreaded programs. Laying Out Components Within a Container tells you how to choose a layout manager, how to use each of the layout manager classes the JavaTM platform provides, how to use absolute positioning instead of a layout manager, and how to create your own layout manager. Writing Event Listeners tells you how to handle events in your programs. Working with Graphics tells you how to do everything from drawing lines and text to loading, displaying, and manipulating images. It includes information on performing animation and on improving graphics performance. Converting to Swing tells you how to convert programs that use the 1.1 AWT API to use the Swing components. Although this is the main trail for learning about GUIs, it isn't the only trail with UI-related information. Here are some other trails that discuss UI topics: ● 2D Graphics , which describes the 2D graphics features available in the Java 2 platform. ● Sound , which discusses the sound capabilities available in the Java 2 platform. ● Writing Applets , which describes API available only to applets, such as sound capabilities in JDK 1.0 and 1.1. ● Essential Java Classes , which covers many topics, including properties and the standard I/O streams. ● The Bonus trail contains Full-Screen Exclusive Mode API , a lesson that describes how to use API introduced in v1.4 to render graphics directly to the screen. Your feedback is important to us! Please send your comments and suggestions to us using the feedback page. http://java.sun.com/docs/books/tutorial/uiswing/index.html (2 of 3) [10/28/2001 1:51:25 PM] Creating a GUI with JFC/Swing Search Start of Tutorial Feedback Form Examples Index Copyright 1995-2001 Sun Microsystems, Inc. All rights reserved. http://java.sun.com/docs/books/tutorial/uiswing/index.html (3 of 3) [10/28/2001 1:51:25 PM] Creating a GUI with JFC/Swing: Table of Contents The JavaTM Tutorial Search Start of Tutorial > Start of Trail Feedback Form Examples Index Trail: Creating a GUI with JFC/Swing: Table of Contents User Interfaces that Swing: A Quick Start Guide Overview of the Swing API Your First Swing Program Example Two: SwingApplication Example Three: CelsiusConverter Example Four: LunarPhases Example Five: VoteDialog Layout Management Threads and Swing Summary Questions and Exercises: User Interfaces That Swing Getting Started with Swing About the JFC and Swing Compiling and Running Swing Programs Compiling and Running Swing Programs (Java 2 Platform) Compiling and Running Swing Programs (JDK 1.1) Running Swing Applets A Quick Tour of a Swing Application's Code Swing Features and Concepts Swing Components and the Containment Hierarchy Layout Management Event Handling Painting Threads and Swing More Swing Features and Concepts The Anatomy of a Swing-Based Program http://java.sun.com/docs/books/tutorial/uiswing/TOC.html (1 of 5) [10/28/2001 1:51:26 PM] Creating a GUI with JFC/Swing: Table of Contents Using Swing Components A Visual Index to the Swing Components The JComponent Class Using Top-Level Containers How to Make Frames (Main Windows) How to Make Dialogs How to Make Applets Using Intermediate Swing Containers How to Use Panels How to Use Scroll Panes How to Use Split Panes How to Use Tabbed Panes How to Use Tool Bars How to Use Internal Frames How to Use Layered Panes How to Use Root Panes Using Atomic Components How to Use Buttons, Check Boxes, and Radio Buttons How to Use Color Choosers How to Use Combo Boxes How to Use File Choosers How to Use Labels How to Use Lists How to Use Menus How to Monitor Progress How to Use Sliders How to Use Tables Using Text Components An Example of Using Each Text Component General Rules for Using Text Components How to Use Text Fields Concepts: About Editor Panes and Text Panes Summary of Text How to Use Tool Tips How to Use Trees Solving Common Component Problems Using Other Swing Features http://java.sun.com/docs/books/tutorial/uiswing/TOC.html (2 of 5) [10/28/2001 1:51:26 PM] Creating a GUI with JFC/Swing: Table of Contents How to Use Actions How to Support Assistive Technologies How to Use Borders How to Use Icons How to Set the Look and Feel How to Use Threads How to Use Timers Solving Common Problems Using Other Swing Features Laying Out Components Within a Container Using Layout Managers General Rules for Using Layout Managers How to Use BorderLayout How to Use BoxLayout How to Use SpringLayout How to Use CardLayout How to Use FlowLayout How to Use GridLayout How to Use GridBagLayout How to Use GridBagLayout: Specifying Constraints How to Use GridBagLayout: The Example Explained Creating a Custom Layout Manager Doing Without a Layout Manager (Absolute Positioning) Solving Common Layout Problems Writing Event Listeners Some Simple Event-Handling Examples General Information about Writing Event Listeners Listeners Supported by Swing Components Implementing Listeners for Commonly Handled Events How to Write an Action Listener How to Write a Caret Listener How to Write a Change Listener How to Write a Component Listener How to Write a Container Listener How to Write a Document Listener How to Write a Focus Listener How to Write an Internal Frame Listener http://java.sun.com/docs/books/tutorial/uiswing/TOC.html (3 of 5) [10/28/2001 1:51:26 PM] Creating a GUI with JFC/Swing: Table of Contents How to Write an Item Listener How to Write a Key Listener How to Write a List Data Listener How to Write a List Selection Listener How to Write a Mouse Listener How to Write a Mouse-Motion Listener How to Write a Table Model Listener How to Write a Tree Expansion Listener How to Write a Tree Model Listener How to Write a Tree Selection Listener How to Write a Tree-Will-Expand Listener How to Write an Undoable Edit Listener How to Write a Window Listener Summary of Listener API Solving Common Event-Handling Problems Working with Graphics Overview of Custom Painting Using Graphics Primitives Painting Shapes Working with Text Using Images Loading Images Displaying Images Performing Animation Creating an Animation Loop with Timer Moving an Image Across the Screen Displaying a Sequence of Images Improving the Appearance and Performance of Image Animation Solving Common Graphics Problems Converting to Swing Why to Convert How to Convert Conversion Resources Swing Replacements for AWT Components General Conversion Tips Component-Specific Conversion Tips http://java.sun.com/docs/books/tutorial/uiswing/TOC.html (4 of 5) [10/28/2001 1:51:26 PM] Creating a GUI with JFC/Swing: Table of Contents Some Conversion Examples Solving Common Conversion Problems Search Start of Tutorial > Start of Trail Feedback Form Examples Index Copyright 1995-2001 Sun Microsystems, Inc. All rights reserved. http://java.sun.com/docs/books/tutorial/uiswing/TOC.html (5 of 5) [10/28/2001 1:51:26 PM] Creating a GUI with JFC/Swing: Indexes of Examples The JavaTM Tutorial Search Start of Tutorial > Start of Trail Feedback Form Trail: Creating a GUI with JFC/Swing: Indexes of Examples Getting Started with Swing: Examples Swing Features and Concepts: Examples Using Swing Components: Examples Using Other Swing Features: Examples Laying Out Components: Examples Writing Event Listeners: Examples Working with Graphics: Examples Converting to Swing: Examples Search Start of Tutorial > Start of Trail Feedback Form Copyright 1995-2001 Sun Microsystems, Inc.

  1273
Recommended publications
  • Swing: Components for Graphical User Interfaces
    Swing: Components for Graphical User Interfaces Computer Science and Engineering College of Engineering The Ohio State University Lecture 22 GUI Computer Science and Engineering The Ohio State University GUI: A Hierarchy of Nested Widgets Computer Science and Engineering The Ohio State University Visual (Containment) Hierarchy Computer Science and Engineering The Ohio State University Top-level widgets: outermost window (a container) Frame, applet, dialog Intermediate widgets: allow nesting (a container) General purpose Panel, scroll pane, tabbed pane, tool bar Special purpose Layered pane Atomic widgets: nothing nested inside Basic controls Button, list, slider, text field Uneditable information displays Label, progress bar, tool tip Interactive displays of highly formatted information Color chooser, file chooser, tree For a visual (“look & feel”) of widgets see: http://java.sun.com/docs/books/tutorial/uiswing/components Vocabulary: Widgets usually referred to as “GUI components” or simply “components” History Computer Science and Engineering The Ohio State University Java 1.0: AWT (Abstract Window Toolkit) Platform-dependent implementations of widgets Java 1.2: Swing Most widgets written entirely in Java More portable Main Swing package: javax.swing Defines various GUI widgets Extensions of classes in AWT Many class names start with “J” Includes 16 nested subpackages javax.swing.event, javax.swing.table, javax.swing.text… Basic GUI widgets include JFrame, JDialog JPanel, JScrollPane, JTabbedPane,
    [Show full text]
  • Proveos User Manual
    User Manual Contents Welcome .............................................................................................. 5 How proVEOS Works ...........................................................................................7 Installing the proVEOS Software for Windows ..................................... 9 Configuring Firewall Software .............................................................................10 Installing the Windows proVEOS Software .........................................................14 Signing in to proVEOS ........................................................................................24 Installing the proVEOS Software for Mac........................................... 29 Configuring the Firewall ......................................................................................30 Installing the Mac proVEOS Software.................................................................32 Signing in to proVEOS ........................................................................................34 Presenting with proVEOS ................................................................... 37 Starting a Presentation .......................................................................................40 Managing Participants ........................................................................................40 Chatting with Participants ...................................................................................45 Playing Music and Movies ................................................................
    [Show full text]
  • Java Programming
    CHAPTER 15 Advanced GUI Topics In this chapter, you will: Use content panes Use color Learn more about layout managers Use JPanels to increase layout options Create JScrollPanes Understand events and event handling more thoroughly Use the AWTEvent class methods Handle mouse events Use menus Unless noted otherwise, all images are © 2014 Cengage Learning Copyright 2013 Cengage Learning. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part. Due to electronic rights, some third party content may be suppressed from the eBook and/or eChapter(s). Editorial review has deemed that any suppressed content does not materially affect the overall learning experience. Cengage Learning reserves the right to remove additional content at any time if subsequent rights restrictions require it. CHAPTER 15 Advanced GUI Topics Understanding the Content Pane The JFrame class is a top-level container Java Swing class. (The other two top-level container classes are JDialog and JApplet.) Every GUI component that appears on the screen must be part of a containment hierarchy. A containment hierarchy is a tree of components that has a 802 top-level container as its root (that is, at its uppermost level). Every top-level container has a content pane that contains all the visible components in the container’s user interface. The content pane can directly contain components like JButtons, or it can hold other containers, like JPanels, that in turn contain such components. A top-level container can contain a menu bar. A menu bar is a horizontal strip that conventionally is placed at the top of a container and contains user options.
    [Show full text]
  • View of XML Technology
    AN APPLICATION OF EXTENSlBLE MARKUP LANGUAGE FOR INTEGRATION OF KNOWLEDGE-BASED SYSTEM WITH JAVA APPLICATIONS A Thesis Presented to The Faculty of the Fritz J. and Dolores H. Russ College of Engineering and Technology Ohio University In Partial Fulfillment of the Requirement for the Degree Master of Science BY Sachin Jain November, 2002 ACKNOWLEDGEMENTS It is a pleasure to thank the many people who made this thesis possible. My sincere gratitude to my thesis advisor, Dr. DuSan Sormaz, who helped and guided me towards implementing the ideas presented in this thesis. His dedication to research and his effort in the development of my thesis was an inspiration throughout this work. The thesis would not be successful without other members of my committee, Dr. David Koonce and Dr. Constantinos Vassiliadis. Special thanks to them for their substantial help and suggestions during the development of this thesis. I would like also to thank Dr. Dale Masel for his class on guidelines for how to write thesis. Thanlts to my fellow colleagues and members of the lMPlanner Group, Sridharan Thiruppalli, Jaikumar Arumugam and Prashant Borse for their excellent cooperation and suggestions. A lot of infom~ation~1sef~11 to the work was found via the World Wide Web; 1 thank those who made their material available on the Web and those who kindly responded back to my questions over the news-groups. Finally, it has been pleasure to pursue graduate studies at IMSE department at Ohio University, an unique place that has provided me with great exposures to intricacies underlying development, prograrn~ningand integration of different industrial systems; thus making this thesis posslbie.
    [Show full text]
  • LWUIT Developer's Guide
    Lightweight UI Toolkit Developer’s Guide Part No. 07-08-10 July 2010 Copyright © 2008, 2010 Oracle and/or its affiliates. All rights reserved. This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited. The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing. If this is software or related software documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable: U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007). Oracle America, Inc., 500 Oracle Parkway, Redwood City, CA 94065.
    [Show full text]
  • Programming Java for OS X
    Programming Java for OS X hat’s so different about Java on a Mac? Pure Java applica- tions run on any operating system that supports Java. W Popular Java tools run on OS X. From the developer’s point of view, Java is Java, no matter where it runs. Users do not agree. To an OS X user, pure Java applications that ignore the feel and features of OS X are less desirable, meaning the customers will take their money elsewhere. Fewer sales translates into unhappy managers and all the awkwardness that follows. In this book, I show how to build GUIs that feel and behave like OS X users expect them to behave. I explain development tools and libraries found on the Mac. I explore bundling of Java applications for deployment on OS X. I also discuss interfacing Java with other languages commonly used on the Mac. This chapter is about the background and basics of Java develop- ment on OS X. I explain the history of Java development. I show you around Apple’s developer Web site. Finally, I go over the IDEs commonly used for Java development on the Mac. In This Chapter Reviewing Apple Java History Exploring the history of Apple embraced Java technologies long before the first version of Java on Apple computers OS X graced a blue and white Mac tower. Refugees from the old Installing developer tan Macs of the 1990s may vaguely remember using what was tools on OS X called the MRJ when their PC counterparts were busy using JVMs. Looking at the MRJ stands for Mac OS Runtime for Java.
    [Show full text]
  • COMP1006/1406 Notes 2
    COMP1406/1006 - Design and Implementation of Computer Applications Winter 2006 2 Applications and LayoutManagers What's in This Set of Notes? We look here at how to create a graphical user interface (i.e., with windows) in JAVA. Creating GUIs in JAVA requires adding components onto windows. We will find out how to do this as well as look at an interesting JAVA feature called a "LayoutManager" that automatically arranges components on the window. This allows us to create simple windows without having to worry about resizing issues. Here are the individual topics found in this set of notes (click on one to go there): • 2.1 Creating a Basic GUI Application • 2.2 Components and Containers • 2.3 Layout Managers o 2.3.1 NullLayout o 2.3.2 FlowLayout o 2.3.3 BorderLayout o 2.3.4 CardLayout o 2.3.5 GridLayout o 2.3.6 GridBagLayout o 2.3.7 BoxLayout 2.1 Creating a Basic GUI Application Recall that a Graphical User Interface (GUI) is a user interface that has one or more windows. A frame: • is the JAVA terminology for a window (i.e., its a window frame) • represented by the Frame and JFrame classes in JAVA • used to show information and handle user interaction • has no security restrictions ... can modify files, perform I/O, open network connections to other computers, etc.. The following code creates a basic window frame in JAVA and shows it on the screen: javax.swing.JFrame frame = new javax.swing.JFrame("This appears at the top of the window"); frame.setSize(300, 100); frame.setVisible(true); Here is what it looks like: Although this code for bringing up a new window can appear anywhere, we typically designate a whole class to represent the window (that is, the JAVA application).
    [Show full text]
  • Release Notes for Fedora 15
    Fedora 15 Release Notes Release Notes for Fedora 15 Edited by The Fedora Docs Team Copyright © 2011 Red Hat, Inc. and others. The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. The original authors of this document, and Red Hat, designate the Fedora Project as the "Attribution Party" for purposes of CC-BY-SA. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version. Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law. Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, MetaMatrix, Fedora, the Infinity Logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries. For guidelines on the permitted uses of the Fedora trademarks, refer to https:// fedoraproject.org/wiki/Legal:Trademark_guidelines. Linux® is the registered trademark of Linus Torvalds in the United States and other countries. Java® is a registered trademark of Oracle and/or its affiliates. XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries. MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries. All other trademarks are the property of their respective owners.
    [Show full text]
  • Maplogic Layout Manager User's Manual
    MAPLOGIC CORPORATION GIS Software Solutions MapLogic Layout Manager User’s Manual MapLogic Layout Manager User’s Manual © 2009 MapLogic Corporation All Rights Reserved 330 West Canton Ave., Winter Park, Florida 32789 Phone (407) 657-1250 • Fax (407) 657-7008 MapLogic Layout Manager is a trademark of MapLogic Corporation. ArcGIS, ArcMap and ArcView are registered trademarks of ESRI. Table of Contents Introduction _____________________________________________________________________ 1 What Is MapLogic Layout Manager? ____________________________________________ 1 MapLogic Layout Manager User Interface ____________________________________________ 2 The Layouts Tab ____________________________________________________________ 2 The MapLogic Layout Manager Toolbar _________________________________________ 3 Element Properties __________________________________________________________ 4 Before You Get Started ____________________________________________________________ 6 How The MapLogic Layout Manager Changes The ArcMap Document_________________ 6 Different Licenses For The MapLogic Layout Manager _____________________________ 6 Basic Concepts ___________________________________________________________________ 8 Multiple Layouts Within The ArcMap Document __________________________________ 8 The Map Series Layout _______________________________________________________ 8 The Map Book Layout _______________________________________________________ 9 New Elements You Can Add To Map Series And Book Layouts _____________________ 10 Two-Sided Map
    [Show full text]
  • R16 B.TECH CSE IV Year Syllabus
    R16 B.TECH CSE. JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY HYDERABAD B.TECH. COMPUTER SCIENCE AND ENGINEERING IV YEAR COURSE STRUCTURE & SYLLABUS (R16) Applicable From 2016-17 Admitted Batch IV YEAR I SEMESTER S. No Course Code Course Title L T P Credits 1 CS701PC Data Mining 4 0 0 4 2 CS702PC Principles of Programming Languages 4 0 0 4 3 Professional Elective – II 3 0 0 3 4 Professional Elective – III 3 0 0 3 5 Professional Elective – IV 3 0 0 3 6 CS703PC Data Mining Lab 0 0 3 2 7 PE-II Lab # 0 0 3 2 CS751PC Python Programming Lab CS752PC Android Application Development Lab CS753PC Linux programming Lab CS754PC R Programming Lab CS755PC Internet of Things Lab 8 CS705PC Industry Oriented Mini Project 0 0 3 2 9 CS706PC Seminar 0 0 2 1 Total Credits 17 0 11 24 # Courses in PE - II and PE - II Lab must be in 1-1 correspondence. IV YEAR II SEMESTER Course S. No Course Title L T P Credits Code 1 Open Elective – III 3 0 0 3 2 Professional Elective – V 3 0 0 3 3 Professional Elective – VI 3 0 0 3 4 CS801PC Major Project 0 0 30 15 Total Credits 9 0 30 24 Professional Elective – I CS611PE Mobile Computing CS612PE Design Patterns CS613PE Artificial Intelligence CS614PE Information Security Management (Security Analyst - I) CS615PE Introduction to Analytics (Associate Analytics - I) R16 B.TECH CSE. Professional Elective – II CS721PE Python Programming CS722PE Android Application Development CS723PE Linux Programming CS724PE R Programming CS725PE Internet of Things Professional Elective - III CS731PE Distributed Systems CS732PE Machine Learning CS733PE
    [Show full text]
  • AGL HMI Framework Architecture Document
    AGL HMI Framework Architecture Document Version Date 0.9 2019/x/x AGL HMI Framework Architecture Document 1. HMI Framework overview ........................................................................................ 4 1.1. Oerview .............................................................................................................. 4 1.1.1. HMI-FW Components ................................................................................. 5 1.1.2. Related components ..................................................................................... 6 2. GUI-library ................................................................................................................ 7 2.1. Overview ............................................................................................................ 7 2.1.1. Related external components ....................................................................... 7 2.1.2. Internal Components ................................................................................... 8 2.2. Graphics functions .............................................................................................. 9 2.2.1. Procedure necessary for HMI-Apps ............................................................ 9 2.2.2. Software configuration of GUI-lib ............................................................ 10 2.3. Sound functions ................................................................................................ 12 2.4. Input functions .................................................................................................
    [Show full text]
  • Java Lecture 5 AWT
    Java Lecture 5 AWT Abstract Windows Toolkit: A Java window is a set of nested components, starting from the outermost window down to the smallest user interface (UI) component. Peers: Peers are native GUI components (native to the platform). When a Java program creates and displays a Java AWT component, that component actually creates and displays a native component (called a peer). Thus, under Windows 95, a windows 95 button, or dialog, etc. is generated. Under Solaris a Motif peer and under Macintosh, a Macintosh peer. Components include seeable things such as: windows menu bars buttons text fields and non-seeable things like containers which can include other components. Containers have layout managers that deal with positioning and shaping of components. The nesting of components within containers within other components creates a hierarchy for painting and event passing. Major components: Containers: Containers are generic AWT components that can contain other components, including other containers. The most common form of container is the panel, which represents a container that can be displayed on screen. Applets are a form of panel (in fact, the "Applet" class is a subclass of the "Panel" class). Canvases: A canvas is a simple drawing surface. Although you can draw on panels, (as you've been doing all along), canvases are good for painting images or other graphics operations. UI components: These can include buttons, lists, simple popup menus, checkboxes test fields, and other typical elements of a user interface. Window construction components: These include windows, frames, menu bars, and dialogs. These are listed separately from the other UI components because you'll use these less often--particularly in applets.
    [Show full text]