public static void main(String[] args) throws PrinterException {
Toolkit tk = Toolkit.getDefaultToolkit();
int xSize = ((int) tk.getScreenSize().getWidth());
int ySize = ((int) tk.getScreenSize().getHeight());
final String password = "Alphabet";
JFrame screen = new JFrame("INSERT TITLE HERE");
screen.setSize(xSize, ySize);
screen.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
screen.setResizable(false);
screen.setVisible(true);
final JWindow window = new JWindow(screen);
window.setSize(xSize, ySize);
window.setName("INSERT TITLE HERE");
final JTextArea text = new JTextArea();
text.setText("Type the password > ");
text.setBackground(Color.BLACK);
text.setForeground(Color.green);
window.add(text);
window.setVisible(true);
text.addKeyListener(new java.awt.event.KeyAdapter(){
public void keyReleased(java.awt.event.KeyEvent evt) {
System.out.println(evt.getKeyCode());
if(evt.getKeyCode() == 51){
System.out.println(text.getText());
String passAttempt = text.getText();
int start = passAttempt.indexOf('>') + 2 ;
int end = passAttempt.indexOf('#');
passAttempt = passAttempt.substring(start, end);
if(passAttempt.equals(password)) {
System.out.println("SUCCESSFUL");
text.setText("Login Successful");
window.add(text);
window.setVisible(true);
}
if(!passAttempt.equals(password)) {
System.out.println(passAttempt);
text.setText("Incorrect");
window.add(text);
window.setVisible(true);
}
}
}
});
}
放射性降下物のようなユーザー インターフェイスを作成しようとしています。UI を開く前にユーザー入力に「パスワード」を入力する必要がありますが、JTextArea から入力を読み取る方法がわかりません。ヘルプ!
注: ここでの主な目的は、昔ながらの DOS プログラムを使用する感覚を維持することなので、JOptionPane などは使用できません。
編集:皆さんのご協力に感謝します.keyListenerを使用することになりましたが、完全に機能しました!