|
|
|
1000 Java Tips ebook
|
|
 

Free "1000 Java Tips" eBook is here! It is huge collection of big and small Java
programming articles and tips. Please take your copy here.
Take your copy of free "Java Technology Screensaver"!. |
|
Easy Learn Java: Programming Articles, Examples and Tips - Page 321
Previous
1060 Stories (530 Pages, 2 Per Page)
Next
The Java Lesson 35: Essential HTML to launch an applet and pass it parameters
|
Java Lesson 35 by
Jon Huhtala: Essential HTML to launch an applet and pass it parameters
Web pages
-
Are really text documents, in spite of their
fancy features
-
Can be created or viewed with any text editor,
such as Microsoft Word or Windows Notepad
-
Have a file extension of either .htm or .html
HyperText Markup Language (HTML)
-
Enhances the capabilities of text-only
documents to permit special text formatting, links to other pages, and the
insertion of objects (audio files, graphic files, etc.). It also provides for
the insertion and execution of Java applets.
-
Uses special tags (codes) within the text file.
The tags are acted upon by the browser when the Web page is loaded.
Example: Displaying text in bold
This will be bold
Notes:
-
The tag marks the beginning of bold text and the marks the end of
bold text
-
HTML tags are not case sensitive. These
tags could have been coded and .
-
Most text formatting tags are paired. There is a beginning
tag and ending tag.
- Other HTML tags exist to specify text size, italicizing, centering,
the start of a new paragraph, etc.
Example: Inserting a graphic image
<<IMG
SRC=myPhoto.html WIDTH=100 HEIGHT=150>>
Notes:
-
This tag has attributes (parameters) that
specify the file name as well as the image width and height in pixels
-
Unlike HTML tags and attributes, file names
are case sensitive. Proper capitalization must be maintained.
-
The image will appear at the location of
the tag within the document
-
Tags that insert image objects and audio
clips are not paired
- Is simplified by the use of various software products. In fact, a detailed
understanding of HTML is no longer required to create sophisticated Web pages.
Products like Netscape Composer and Microsoft FrontPage
are typically used to build Web pages using a WYSIWYG (What You See Is What
You Get) approach. The HTML tags are generated automatically.
The only HTML you are required to learn in this course involves
launching a Java applet. While some packages help generate the tags, it is
sometimes necessary to code or edit the tags manually.
Launching an applet in an HTML document
- Requires a pair of tags. The first tag must have attributes that identify
the class name of the applet and its size in pixels. The second tag marks the
end of the pair.
Example: Launching a simple applet
Notes:
-
In order to launch the applet,
the browser must be Java enabled. Otherwise, the tags are ignored.
-
The attributes can be coded in
any order
-
The CODE= attribute specifies the name of the
applet's .class file
(the bytecode file generated by the Java compiler). If no path is
specified, the file is assumed to exist in the same server directory as
the web page. This attribute may optionally be coded within quotes. For
example, CODE="MyApplet.class"
-
The initial pixel width and height of the
screen area used by the applet are specified by the WIDTH= and HEIGHT= attributes. A call
to the resize()
method within the applet class can modify this size. A maximum size of 600
x 400 is recommended for proper display regardless of the graphics
resolution.
-
There are many other attributes for an
Example: Launching an applet that receives a parameter
Notes:
-
The tag is required for each
parameter that is passed to an applet.
-
The NAME= attribute specifies the case-sensitive
identifier of the parameter. The VALUE= attribute specifies a case-sensitive string value
associated with the parameter. It must be coded in quotes if it contains
any spaces. For example, a tag to pass a message to an applet might
contain the attribute VALUE="Hello world!"
- To retrieve the parameter's value from the browser, the following
expression must be coded within the applet:
getParameter("taxRate")
In this example, the value received from the browser would be a String object having the
value ".06"
-
There is no restriction on the number of parameters. Simply
code a PARAM tag for
each one and place them between the and tags.
A sample applet that
receives a parameter
This applet is a very slightly modified version of the applet from the
previous lesson. The message it displays when the user clicks the button is
received as a parameter from the HTML within the Web page.
To test the applet, a tag such as
must exist in the App.html source file between the tags. To verify that the tag exists, or to add it
if it doesn't, use any text editor (such as Notepad).
The applet's code is as
follows:
import java.awt.*; import
java.awt.event.*; import java.applet.*;
public class App extends
Applet implements ActionListener {
Button b = new Button("Show
message"); TextField message = new TextField("", 15);
public void init() { resize(300,
100);
setBackground(Color.lightGray);
b.addActionListener(this); add(b);
message.setFont(new Font("Serif", Font.ITALIC, 24));
message.setForeground(Color.red);
message.setEditable(false); add(message);
}
public void actionPerformed(ActionEvent e)
{ if (message.getText().length() == 0)
{
message.setText(getParameter("message"));
b.setLabel("Clear message"); }
else {
message.setText(""); b.setLabel("Show
message"); } } }
Posting a Web page that
launches a custom applet
All you must do is upload the .html file of the Web page and the .class file of the applet to your Web server. The
rest is automatic!
Lab exercise for Ferris
students
E-mail your answers to this
assignment no later than
the due date listed in the class schedule.
Review questions
-
True or False: If a Web page
plays an audio clip, the audio clip must be stored within the Web page.
-
True
-
False
-
Which one of the following
satisfy the minimum tag requirements for launching an applet?
-
-
-
-
-
-
A parameter passed to an
applet from the launching Web page may be of what data type?
-
only a primitive type
(boolean, char, byte, short, int, long, float, or double)
-
any primitive type or a
string
-
only a string
-
only a char, int, or double
primitive type
-
only a char, int, or double
primitive type or a string
-
If the following tag is
associated with an applet being launched from an HTML document, which of the
statements below are true? (choose two)
-
the applet will receive
two parameters
-
the applet will receive
one parameter
-
the
expression: getParameter("x") will return a string with the
value "y"
-
the
expression: getParameter(x) will return a string with the
value "y"
-
the
expression: getParameter("NAME") will return a string with the
value "x"
12315 bytes more | 7 comments | | Score: 0
|
Posted by jalex on Monday, March 14, 2005 (00:00:00) (9443 reads)
|
Java: Big Blob Structure
|

You'll see a lot of programs that look like the following.
They jam the main program, the GUI, and the model into one file.
Many text books show this style, not because it is what you
should use, but because it's easier to show it in a text book:
everything is in one file.
Don't use this structure except for the absolutely simplest programs.
It's hard to read, maintain, and enhance.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
|
// structure/BigBlob.java -- Everything in one file.
// Fred Swartz - December 2004
// A common style of programming is to put all processing
// in the GUI. This works Ok as long at the "model", the
// logic, is so small that it isn't worth putting into
// a separate class.
//
// However, mixing model with presentation usually makes the program hard
// to read, and the inevitable growth of the program leads to a mess.
//
// This fails the simple Interface Independence test.
// Could the model easily work with a command line or web interface? No.
//
// It also fails the Model Independence test.
// Could we easily change the model, eg, to BigDecimal? No.
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.math.BigInteger;
public class BigBlob {
public static void main(String[] args) {
JFrame window = new BigBlobGUI();
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
window.setTitle("Simple Calc");
window.setVisible(true);
}
}
class BigBlobGUI extends JFrame {
//... Constants
private static final String INITIAL_VALUE = "1";
//... Components
private JTextField m_totalTf = new JTextField(10);
private JTextField m_userInputTf = new JTextField(10);
private JButton m_multiplyBtn = new JButton("Multiply");
private JButton m_clearBtn = new JButton("Clear");
private BigInteger m_total; // The total current value state.
/** Constructor */
BigBlobGUI() {
//... Initialize components and model
m_total = new BigInteger(INITIAL_VALUE);
m_totalTf.setText(INITIAL_VALUE);
m_totalTf.setEditable(false);
//... Layout the components.
JPanel content = new JPanel();
content.setLayout(new FlowLayout());
content.add(new JLabel("Input"));
content.add(m_userInputTf);
content.add(m_multiplyBtn);
content.add(new JLabel("Total"));
content.add(m_totalTf);
content.add(m_clearBtn);
//... finalize layout
this.setContentPane(content);
this.pack();
//... Listener to do multiplication
m_multiplyBtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
try {
m_total = m_total.multiply(new BigInteger(m_userInputTf.getText()));
m_totalTf.setText(m_total.toString());
} catch (NumberFormatException nex) {
JOptionPane.showMessageDialog(BigBlobGUI.this, "Bad Number");
}
}
});
//... Listener to clear.
m_clearBtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
m_total = new BigInteger(INITIAL_VALUE);
m_totalTf.setText(INITIAL_VALUE);
}
});
}
}
|
6 comments | | Score: 0
|
Posted by jalex on Sunday, March 13, 2005 (00:00:00) (2627 reads)
|
|
|