Download gui - Reocities

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
User Interfaces II
GUI – Awt, Swing, Web
(c) IDMS/SQL News
http://www.geocities.com/idmssql
User Interfaces - recap
 In Java one can create at least 3 types of
programs
Windows
Applet
Servlet/JSP
Java Class
GUI - Introduction
(c)http://www.geocities.com/idmssql
2
Graphical User Interface
 Started with AWT – Abstract Windowing Toolkit
 Later came Swing
 Today AWT components are included in Swing
 AWT components are called heavyweight
 Swing components are called lightweight
 Gui is based on events which are generated by
things like mouse, button, list selections, window
close operations, menu pulldowns, etc
GUI - Introduction
(c)http://www.geocities.com/idmssql
3
Top Level GUI
o
o
o
o
Swing Containers – Top Level
- JFrame
- JDialog
-JApplet
All three support some common methods
like setMenuBar(), getContentPane()
‘J’ stands for components in Swing...
Without ‘J’ they are usually part of AWT
GUI - Introduction
(c)http://www.geocities.com/idmssql
4
GUI Jargons
 One of the negative(!) things about new
technology is the overuse of common words
and known technical words in a totally
different sense!
 So we hear terms like component, container,
layout, listener, Frame, Panel, Window,
Dialog ... a never ending list
 We have to live with this!!!
GUI - Introduction
(c)http://www.geocities.com/idmssql
5
GUI Objects – at lower level
 GUI is based on 3 types of objects
 Containers
- JPanel, JScrollPane etc
 Selectors
- JButton, JTextField, JCheckBox etc
 Info Display
JTextArea, JTable etc (editable)
JLabel, JProgressBar etc (non-editable)
GUI - Introduction
(c)http://www.geocities.com/idmssql
6
Sample Methods ...
 Paint(), setFont(), setSize() ...
 setLayout()
 setBoarder(), setToolTipText(), setOpaque()
... the list is endless...
GUI - Introduction
(c)http://www.geocities.com/idmssql
7
Example : GuiSample1
import java.awt.*;
import javax.swing.*; // Packages used
import java.awt.event.*;
public class GuiSample1 extends JFrame {
JButton myButton = new JButton("Press Here");
JTextArea myArea = new JTextArea(10,20);
public void setupGUI() {
setTitle("S212 - Java Crash Course");
myButton.setEnabled(true);
Container c = getContentPane();
c.setLayout(new FlowLayout());
c.add(myButton);
c.add(myArea);
setSize(400,300); }
See next Page
GUI - Introduction
(c)http://www.geocities.com/idmssql
8
Gui Code continued...
// we need a main to instantiate and execute this class
public static void main(String args[]) {
GuiSample1 dec18 = new GuiSample1();
dec18.setupGUI();
dec18.setVisible(true);
dec18.myArea.setEditable(false);
// Quit the application when the user 'closes' the Window
f.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);}
});
}//main
} //
The above code does very little, but is complete.
GUI - Introduction
(c)http://www.geocities.com/idmssql
9
GUI .. note ...
•
•
•
•
•
•
•
•
The class extends JFrame
Container is created by getContentPane()
setLayout method is used
Buttons etc added by add(...) command
Main () gets controll first
Main instantiate a new object ‘dec18’
Method setupGUI does the housekeeping...
We utilize a standard ‘WindowsListener’
mechanism to close.
A complete example is given as GuiSample1.java
GUI - Introduction
(c)http://www.geocities.com/idmssql
10
Applet
 Applets are Java classes run from WWW
 Applets do not have main method
 Html file will have tags like <applet
code=“Hello5.class" width=”400"
height=”325"></applet>
 More on applets later ...
 Sample Java code follows
GUI - Introduction
(c)http://www.geocities.com/idmssql
11
Applet sample code
/*Applet program hello5.java*/
import java.applet.Applet;
import java.awt.*;
public class Hello5 extends Applet {
public void paint(Graphics screen) {
screen.drawString("Hello World",50,25);
screen.drawRoundRect(20, 40, 100, 100, 30,10);
}//end paint()
} //End hello5 class.
GUI - Introduction
(c)http://www.geocities.com/idmssql
12
Related documents