想設計程式開啟後
先跳出一個視窗來要求輸入密碼
密碼正確後再叫出真正要用的GUI部分
目前寫法
主程式呼叫passwordcheck()
public passwordcheck() { //要求輸入密碼的GUI
getContentPane().setLayout(new FlowLayout());
JLabel lb = new JLabel("輸入密碼 ");
final JPasswordField pwd = new JPasswordField(12);
this.add(lb);
this.add(pwd);
this.setVisible(true);
this.setSize(300, 200);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
pwd.addActionListener(new ActionListener(){ //輸入反應部分
//@Override
public void actionPerformed(ActionEvent arg0) {
try {readpassword();//抓我之前存的密碼的副程式
//密碼存在ckey
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
String key=new String(pwd.getPassword()); //輸入的密碼存在key
if(ckey.equals(key)) //確認密碼是否正確
{
JOptionPane.showMessageDialog(null,"密碼正確");
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
//正確的話去叫我要開的程式
calculatorGUI frame = new calculatorGUI();
frame.setVisible(true);
}
catch (Exception e) { e.printStackTrace();}
}
});
}
else
JOptionPane.showMessageDialog(null,密碼錯誤);
}
}});
}
目前結果會是 密碼正確->會去叫calculatorGUI()
但原本的輸入密碼介面會留在那
想要設計成
密碼正確時叫完calculatorGUI() 輸入密碼介面會自己關掉
但流程不知道怎麼設計比較好
是不是不該把呼叫寫在passwordcheck()中啊?