AWT Component |
Closest Swing Equivalent | Notes |
java.applet.Applet |
JApplet |
AWT applets and Swing applets differ in several ways.
See Converting Applets.
|
Button |
JButton |
A Swing button can include an image and/or text. |
Canvas |
JPanel ,
JLabel ,
or another appropriate Swing component
|
Your choice depends on what the program uses the canvas for.
See Converting Canvases for
a discussion of your conversion options.
|
Checkbox |
JCheckBox
or
JRadioButton
|
Note the `B' is capitalized in the Swing class name but not
in the AWT class name. |
CheckboxMenuItem |
JCheckBoxMenuItem |
Note the `B' is capitalized in the Swing class name but not
in the AWT class name.
Also, note that Swing menu components are true components. |
Choice |
JComboBox |
Replace a Choice with
an uneditable (the default) JComboBox .
You might have to re-write code that handles item events.
Refer to Converting Choices.
|
Dialog |
JDialog
or
JOptionPane
|
AWT-based programs add components directly to a dialog
and directly set its layout manager.
In contrast, Swing-based programs add components to
and set the layout manager on a
JDialog 's content pane.
|
FileDialog |
JFileChooser |
FileDialog is a dialog,
while JFileChooser is a component that you
can place in any top-level container.
For convenience,
JFileChooser provides methods that make it easy
to display a file chooser in a dialog. |
Frame |
JFrame |
AWT-based programs add components directly to a frame
and directly set its layout manager.
In contrast, Swing-based programs add components to
and set the layout manager on a
JFrame 's content pane.
|
Label |
JLabel |
A Swing label can include an image and/or text.
To support accessibility,
use setLabelFor to associate each label
with the component it describes (if any).
|
List |
JList |
AWT lists and Swing lists differ in many ways.
See Converting Lists
for information and examples.
If you'd like your list to display
multiple columns of information,
consider upgrading to a
table.
If the list contains hierarchical informaiton,
consider using a
tree.
|
Menu |
JMenu |
Swing menu components are true components. |
MenuBar |
JMenuBar |
Swing menu components are true components. |
MenuItem |
JMenuItem |
Swing menu components are true components. |
Panel |
JPanel |
You can easily add borders to Swing panels. |
PopupMenu |
JPopupMenu |
Swing menu components are true components. |
Scrollbar |
JScrollPane
or
JSlider
or
JProgressBar |
Although Swing has a JScrollBar class,
you don't usually use it directly. |
ScrollPane |
JScrollPane |
You can add custom decorations,
including row and column headers,
to Swing scroll panes. |
TextArea |
JTextArea |
Typically requires some re-coding to convert.
See Converting Text Components
for information and examples. |
TextField |
JTextField |
For simple uses, JTextField is source-compatible
with TextField .
If you use text listeners
you need to modify your code
to use a custom document or document listener instead.
If you need a password field,
use
JPasswordField instead.
See Converting Text Components
for information about non-trivial conversions and examples. |
Window |
JWindow
or
JToolTip |
You might be able to substitute a non-window component,
such as a JLabel ,
and use a
layered pane.
|