Tôi đã cố gắng tìm ra điều này, tôi đã chạy nó trong các chương trình khác nhau vì vậy nó chắc chắn trong mã. Có lẽ là một cái gì đó dễ dàng quá. Các lỗi nóiNguyên nhân "Không thể tìm thấy biểu tượng" và cách khắc phục?
Password2.java:90: error: cannot find symbol if(pw.equals(password)) ^ symbol: variable password location: class Password2.EnterButtonHandler 1 error
Đây là mã:
// Password1.java
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Password2 extends JFrame // inherits from the JFrame class
{
// static final variables to hold frame dimensions (in pixels)
private static final int WIDTH = 400;
private static final int HEIGHT = 120;
//declare labels, fields, buttons, etc.
private JLabel enterLabel, validLabel, resultLabel;
private JTextField pwTextField;
private JButton enterB, clearB;
private EnterButtonHandler ebHandler;
private ClearButtonHandler cbHandler;
public Password2() // constructor defines frame
{
setTitle("Password Checker"); // set the title of the frame
setSize(WIDTH, HEIGHT); // set the frame size
// prepare the container
Container pane = getContentPane();
GridLayout aGrid = new GridLayout(3, 2, 5, 5); // create a 3 row 2 column layout
pane.setLayout(aGrid); // set the layout for the frame
String password = "hello";
//instantiate JLabels
enterLabel = new JLabel("Enter Password: ");
validLabel = new JLabel("Validation: ");
resultLabel = new JLabel("");
//instantiate text fields
pwTextField = new JPasswordField(30);
//instantiate buttons
enterB = new JButton("Enter");
clearB = new JButton("Clear");
//initialize button handler
ebHandler = new EnterButtonHandler();
enterB.addActionListener(ebHandler);
//initialize button handler
cbHandler = new ClearButtonHandler();
clearB.addActionListener(cbHandler);
pane.add(enterLabel);
pane.add(pwTextField);
pane.add(validLabel);
pane.add(resultLabel);
pane.add(enterB);
pane.add(clearB);
//calls center frame method
centerFrame(WIDTH, HEIGHT);
}// end constructor
//methood to center GUI on screen
public void centerFrame(int frameWidth, int frameHeight)
{
//create toolkit object
Toolkit aToolkit = Toolkit.getDefaultToolkit();
//create a dimension object with user screen information
Dimension screen = aToolkit.getScreenSize();
//assign x, y position of upper left corner of frame
int xUpperLeft = (screen.width - frameWidth)/2;
int yUpperLeft = (screen.height - frameHeight)/2;
//method to position frame on user's screen
setBounds(xUpperLeft, yUpperLeft, frameWidth, frameHeight);
}
private class EnterButtonHandler implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
String pw = pwTextField.getText();
if(pw.equals(password))
{
resultLabel.setText("Password Accepted");
pwTextField.setText("");
}
else
{
resultLabel.setText("Password Rejected");
pwTextField.setText("");
}
}
}
private class ClearButtonHandler implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
resultLabel.setText("");
pwTextField.setText("");
}
}
public static void main(String [] args)
{
JFrame aPassword2 = new Password2(); // create the JFrame object
aPassword2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
aPassword2.setVisible(true);
}
} // end of class
@RobW Đang cố gắng quyết định xem đó có phải là mỉa mai -> –