上一章节我们说到了登陆界面的操作,只有界面,接下来要实现一个承载登陆界面的Activity.这里面有一个IO流的操作,把账号和密码保存到本地
因为登陆界面LoginLayout与LoginActivity用的接口回调实现的界面的分离,所有我们LoginActivity里面要StudentImPresent实现接口LoginPresnent,登陆成功所有的逻辑都在重写LoginPresent的success()里面实现,
登陆成功之后实现了,界面添加了和查询操作,因为界面比较简单,所以LoginActivity里面直接实现了,因为这里面又要做分离,简化LoginActivity的书写,反复练习多态的为目的,所有实现了监听事件(此方法有带研究)
//是实现ActionListener接口
ActionListenerImp imp = new ActionListenerImp();
jButtonAdd.addActionListener(imp);
SearchActionListenerImp searchActionListenerImp=new SearchActionListenerImp();
jButtonSearch.addActionListener(searchActionListenerImp);
public class LoginActivity {
private static String userName = "admin";
private static String password = "123456";
public static void main(String[] args) {
//接口的方式 把登录成功之后是数据返回我们LoginActivity
StudentImPresent sm = new StudentImPresent();
//调用学生管理系登录界面 java GUI HTML
LoginLayout layout = new LoginLayout("软件二班学生管理系统", userName, password, sm);
}
static class StudentImPresent implements LoginPresent {
@Override
public void success() {
//这是登录成功之后在操作
File file = new File("D:/login.txt");
try {
file.createNewFile();
FileOutputStream fileOutputStream = new
FileOutputStream(file);
fileOutputStream.write((userName +
password).getBytes());
} catch (Exception ec) {
System.out.println("写入失败");
}
JFrame jFrame = new JFrame();
jFrame.setSize(300, 400);
jFrame.setLocation(300, 300);
jFrame.setVisible(true);
//需要一个新的介质
FlowLayout flow = new FlowLayout(FlowLayout.LEFT, 10, 10);
JPanel panel = new JPanel(flow);
JButton jButtonAdd = new JButton("添加");
panel.add(jButtonAdd);
JButton jButtonSearch = new JButton("查询");
panel.add(jButtonSearch);
jFrame.add(panel);
//是实现ActionListener接口
ActionListenerImp imp = new ActionListenerImp();
jButtonAdd.addActionListener(imp);
SearchActionListenerImp searchActionListenerImp=new SearchActionListenerImp();
jButtonSearch.addActionListener(searchActionListenerImp);
}
}
}