Java Reference
In-Depth Information
Example 5-11. A GUI authenticator
import
java.awt.*
;
import
java.awt.event.*
;
import
java.net.*
;
import
javax.swing.*
;
public
class
DialogAuthenticator
extends
Authenticator
{
private
JDialog
passwordDialog
;
private
JTextField
usernameField
=
new
JTextField
(
20
);
private
JPasswordField
passwordField
=
new
JPasswordField
(
20
);
private
JButton
okButton
=
new
JButton
(
"OK"
);
private
JButton
cancelButton
=
new
JButton
(
"Cancel"
);
private
JLabel
mainLabel
=
new
JLabel
(
"Please enter username and password: "
);
public
DialogAuthenticator
()
{
this
(
""
,
new
JFrame
());
}
public
DialogAuthenticator
(
String
username
)
{
this
(
username
,
new
JFrame
());
}
public
DialogAuthenticator
(
JFrame
parent
)
{
this
(
""
,
parent
);
}
public
DialogAuthenticator
(
String
username
,
JFrame
parent
)
{
this
.
passwordDialog
=
new
JDialog
(
parent
,
true
);
Container
pane
=
passwordDialog
.
getContentPane
();
pane
.
setLayout
(
new
GridLayout
(
4
,
1
));
JLabel
userLabel
=
new
JLabel
(
"Username: "
);
JLabel
passwordLabel
=
new
JLabel
(
"Password: "
);
pane
.
add
(
mainLabel
);
JPanel
p2
=
new
JPanel
();
p2
.
add
(
userLabel
);
p2
.
add
(
usernameField
);
usernameField
.
setText
(
username
);
pane
.
add
(
p2
);
JPanel
p3
=
new
JPanel
();
p3
.
add
(
passwordLabel
);
p3
.
add
(
passwordField
);
pane
.
add
(
p3
);
JPanel
p4
=
new
JPanel
();
p4
.
add
(
okButton
);
p4
.
add
(
cancelButton
);
pane
.
add
(
p4
);
passwordDialog
.
pack
();
ActionListener
al
=
new
OKResponse
();