Graphical Interfaces
Download
Report
Transcript Graphical Interfaces
GUIs for Applets
Introduction
Applets and Swing/JFC
Alternatives to Swing
Look-and-Feel issues
Example applet graphical user interfaces
How do I build a GUI?
Conclusion
[email protected]
GUIs for Applets
Applets and Swing/JFC
Swing is a kit of GUI “widgets” - it provides a simple
way to create, position and interact with standard
interface components
It is a major part of the Java Foundation Classes (c.f.
MFC, Microsoft Foundation Classes)
It is a “lightweight” component library, uses the MVC
(model-view-controller) architecture design pattern
Applets may use most Swing components
For security reasons some are restricted (which ones?)
[email protected]
GUIs for Applets
Alternatives to Swing
The original GUI system for Java was called the
“Abstract Windowing Toolkit” or AWT
NB Swing is based on many of the AWT
components, either through compatible methods or
through inheritance
AWT is a “heavyweight” component library, uses the
widgets built into the underlying OS architecture
It has some OS-specific behaviour and thus some
portability problems
[email protected]
GUIs for Applets
Alternatives to Swing
SWT is the Standard Widget Toolkit originally
developed by IBM as part of the Eclipse project (see
http://www.developer.com/java/other/article.php/2179061)
It is seen a “thin wrapper” over the native GUI of the
host OS – it is a “heavyweight” library
It is not OS-specific but was originally designed to
run in MS Windows
SWT attempts to use the strengths of the Swing and
AWT approaches while staying simple and quick
[email protected]
GUIs for Applets
Examples
Simple visual
applet with mousesensitive imagebased components
Note that the title
bar is not settable
This is a Swingbased Japplet
running in Win XP
[email protected]
GUIs for Applets
Swing Example
Quite a lot of components
in this simple applet
JLabel, JCheckBox,
JTextArea, JComboBox,
JButton, JRadioButton
This applet will look very
similar in any graphical OS
[email protected]
GUIs for Applets
Swing Example
This example
shows most of
the simple Swing
components
The GUI is XWindows
http://commons.wikimedia.org/
wiki/Image:Gui-widgets.png
[email protected]
GUIs for Applets
SWT platform-specific examples
The Standard Widget Toolkit (SWT) library uses
heavyweight components
Tied to the look-and-feel of the host OS
[email protected]
GUIs for Applets
SWT – a familiar example
Eclipse has
one of the
best-known
examples of
SWT in action
Looks good
and works
well
[email protected]
GUIs for Applets
Building a GUI
Choose AWT, Swing (recommended) or SWT
Learn about component types, event handlers and
layout options – documentation and examples
Design a user interface and critically evaluate it
Revise and repeat!
For background on development in AWT, with
reference to Swing, see “Graphical User Interface
(GUI) Fundamentals” (old article)
[http://www.wirelessdevnet.com/channels/java/training/javagui.html]
[email protected]
GUIs for Applets
Conclusion
There are varied ways to build GUI applications in
Java Applets
Different approaches have different strengths and
weaknesses
Swing is often a good choice (widely supported,
flexible, elegant but quite complex)
Predefined widgets/components are available for
most tasks
Designing a good interface is hard
[email protected]
GUIs for Applets
Optional Further Reading
Swing article on Wikipedia
[http://en.wikipedia.org/wiki/Java_Swing]
Applet article on Wikipedia
[http://en.wikipedia.org/wiki/Java_applet]
Standard Widget Toolkit article on Wikipedia
[http://en.wikipedia.org/wiki/Standard_Widget_Toolkit]
Swing documentation (Sun)
[http://java.sun.com/javase/6/docs/api/index.html]
How to make Applets (Sun)
[http://java.sun.com/docs/books/tutorial/uiswing/components/applet.html]
[email protected]