Solved

Swing applet with a JTextField asking user for a password

Posted on 2003-10-21
3
727 Views
Last Modified: 2013-11-23
Hi,
I have to Create a Swing applet that asks a user to enter a password into a JTextField and to then press [Enter].
Compare the password to "Rosebud"; if it marches, display "Access Granted", if not display "Access Denied.

I tried to write a program but everytime I run it, whenever I enter the correct password or the wrong one it comes out as "access denied".

Here is my code: (Hope you can help)

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class JPasswordA extends JApplet implements ActionListener
{
      JLabel greeting = new JLabel("Please, enter password");
      Font bigFont = new Font("TimesRoman", Font.ITALIC, 24);
      JButton pressMe = new JButton("Press ME");

      JTextField answer = new JTextField("",10);
      FlowLayout flow = new FlowLayout();

      public void init()
      {
            greeting.setFont(bigFont);
            Container con = getContentPane();
            con.add(greeting);
            con.setLayout(flow);
            con.add(answer);
            con.add(pressMe);
            pressMe.addActionListener(this);
            answer.addActionListener(this);
            answer.requestFocus();
      }
      public void actionPerformed(ActionEvent thisEvent)
      {
            Object source = thisEvent.getSource();
                  if(source == ("Rosebud"))
                  {
                  String name = answer.getText();
                  System.out.println("Access granted");
            }
                  else if(source instanceof JTextField);
                  {
                        String name = answer.getText();
                        System.out.println("Access denied");
                  }
            }
      }
0
Comment
Question by:stdebernardi
  • 2
3 Comments
 
LVL 9

Expert Comment

by:yongsing
ID: 9596611
The following will work.

public void actionPerformed(ActionEvent thisEvent)
{
    Object source = thisEvent.getSource();
    if (source instanceof JTextField)
    {
          String name = answer.getText();
          if (name.equals("Rosebud")) {
              System.out.println("Access granted");
          }
          else
          {
              System.out.println("Access denied");
          }
    }
}

0
 
LVL 9

Accepted Solution

by:
yongsing earned 150 total points
ID: 9596646
If you want the checking to be done when either the Enter key is pressed or the button is clicked, then the following code will do:

public void actionPerformed(ActionEvent thisEvent)
{
     String name = answer.getText();
     if (name.equals("Rosebud")) {
         System.out.println("Access granted");
     }
     else
     {
         System.out.println("Access denied");
     }
}


By the way, you should use a JPasswordField instead. This component will display the characters you enter as *.
0
 

Author Comment

by:stdebernardi
ID: 9596775
That's great.
Thank you so much.

I thought about using a JPasswordField but the requirement was a JTextField, I don't know why, a JPasswordField would have been more realistic. Oh well.

Thanks again.
0

Featured Post

Live: Real-Time Solutions, Start Here

Receive instant 1:1 support from technology experts, using our real-time conversation and whiteboard interface. Your first 5 minutes are always free.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Java - Why doesn't this JFrame work 3 58
ForLoop Example 3 48
SHA2 certs for IIS AND Java? 2 80
Tomcat: Unable to run tomcat service. 2 18
Java functions are among the best things for programmers to work with as Java sites can be very easy to read and prepare. Java especially simplifies many processes in the coding industry as it helps integrate many forms of technology and different d…
Basic understanding on "OO- Object Orientation" is needed for designing a logical solution to solve a problem. Basic OOAD is a prerequisite for a coder to ensure that they follow the basic design of OO. This would help developers to understand the b…
Viewers will learn about arithmetic and Boolean expressions in Java and the logical operators used to create Boolean expressions. We will cover the symbols used for arithmetic expressions and define each logical operator and how to use them in Boole…
Viewers will learn about the regular for loop in Java and how to use it. Definition: Break the for loop down into 3 parts: Syntax when using for loops: Example using a for loop:

786 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question