[英]JPanel .getText(); Issues
我正在嘗試驗證用戶輸入是否等於設置的字符串。 看起來不像.getText(); 將用戶輸入設置為字符串值。 任何幫助表示贊賞和歡迎:)謝謝!
while(adminLogIn) {
System.out.println('\u000C');
System.out.println("Enter Administrator Credentials: ");
String adminusername = "admin";
String adminpassword = "admin123";
TimeUnit.SECONDS.sleep(1);
JTextField usernameInput = new JTextField(15);
JTextField passwordInput = new JPasswordField(15);
JPanel myPanel = new JPanel();
myPanel.add(new JLabel("Username: "));
myPanel.add(usernameInput);
myPanel.add(Box.createHorizontalStrut(15)); // a spacer
myPanel.add(new JLabel("Password: "));
myPanel.add(passwordInput);
String username = usernameInput.getText();
String password = passwordInput.getText();
int result = JOptionPane.showConfirmDialog(null, myPanel,
"Administrator Login", JOptionPane.OK_CANCEL_OPTION);
if (username.equals(adminusername) && (password.equals(adminpassword))) {
System.out.println("Logging In...");
TimeUnit.SECONDS.sleep(3);
adminLogIn = false;
} else {
System.out.println("Wrong Username/Password. Try Again.");
attempts++;
}
if (attempts == 3) {
System.out.println("Login Failed. Locking Out User...");
TimeUnit.SECONDS.sleep(3);
System.exit(0);
}
}
設置變量用戶名和密碼時,對話框尚未顯示。 因此值是空的。 如下更改代碼:
while(adminLogIn) {
System.out.println('\u000C');
System.out.println("Enter Administrator Credentials: ");
String adminusername = "admin";
String adminpassword = "admin123";
TimeUnit.SECONDS.sleep(1);
JTextField usernameInput = new JTextField(15);
JTextField passwordInput = new JPasswordField(15);
JPanel myPanel = new JPanel();
myPanel.add(new JLabel("Username: "));
myPanel.add(usernameInput);
myPanel.add(Box.createHorizontalStrut(15)); // a spacer
myPanel.add(new JLabel("Password: "));
myPanel.add(passwordInput);
int result = JOptionPane.showConfirmDialog(null, myPanel,
"Administrator Login", JOptionPane.OK_CANCEL_OPTION);
if (usernameInput.getText().equals(adminusername) && (passwordInput.getText().equals(adminpassword))) {
System.out.println("Logging In...");
TimeUnit.SECONDS.sleep(3);
adminLogIn = false;
} else {
System.out.println("Wrong Username/Password. Try Again.");
attempts++;
}
if (attempts == 3) {
System.out.println("Login Failed. Locking Out User...");
TimeUnit.SECONDS.sleep(3);
System.exit(0);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.