201621123008《Java程序设计》第七周学习总结

时间:2023-03-09 07:31:56
201621123008《Java程序设计》第七周学习总结

1. 本周学习总结

1.1 思维导图:Java图形界面总结

201621123008《Java程序设计》第七周学习总结

2.书面作业

1. GUI中的事件处理

1.1 写出事件处理模型中最重要的几个关键词。

监听,事件源,事件,注册。

1.2 任意编写事件处理相关代码(程序中需要出现你的学号与姓名)并截图,以证明你理解了事件处理模型。

package GUI;

import javax.swing.*;
import java.awt.event.*; /**
*
* @author 周文华
*
*/ public class SimpleGui1B implements ActionListener {
JButton button; public void go() {
JFrame frame=new JFrame();
button=new JButton("click me"); button.addActionListener(this); frame.getContentPane().add(button);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300, 300);
frame.setVisible(true); } @Override
public void actionPerformed(ActionEvent e) {
button.setText("I've been clicked");
} public static void main(String[] args) {
SimpleGui1B gui=new SimpleGui1B();
gui.go();
} }

201621123008《Java程序设计》第七周学习总结

201621123008《Java程序设计》第七周学习总结

2. 大作业:使用图形界面改善你的购物车,考核点如下:

2.1 给出项目的分工表格与git地址

成员 负责任务 git地址
周文华 商品搜索 购物车1.2
肖文婷 购物车展示 购物车1.2

2.2 尝试使用图形界面改写(截图你的程序,图形界面中需要出现你的姓名)

201621123008《Java程序设计》第七周学习总结

201621123008《Java程序设计》第七周学习总结

201621123008《Java程序设计》第七周学习总结

201621123008《Java程序设计》第七周学习总结

201621123008《Java程序设计》第七周学习总结

2.3 将基于控制台界面的程序改写为基于GUI的程序这个过程碰到什么问题?总结:以后编写方法时,应该遵循一些什么原则?

使用了netbeans之后感觉轻松了不少,编写的一般过程是:1.向事件源注册2.重写注册方法,方法与用户的行为对应。3.尽量使一些方法更具有适用性。

2.4 给出几个人在码云上同一项目的提交记录截图。如果某个人无提交记录,视为未完成。

201621123008《Java程序设计》第七周学习总结

201621123008《Java程序设计》第七周学习总结

3.其他:如果大作业实在搞不定,请完成实验任务书上的题目1、题目2、题目3。

3.1 运行界面截图,需要出现你的学号与姓名。

题目1:

201621123008《Java程序设计》第七周学习总结

题目2:

201621123008《Java程序设计》第七周学习总结

201621123008《Java程序设计》第七周学习总结

201621123008《Java程序设计》第七周学习总结

201621123008《Java程序设计》第七周学习总结

3.2 截图在NetBeans中出现的关键代码,不得将代码复制到其他编辑器。

关键代码:

题目二:

private void loginButtonActionPerformed(ActionEvent e) {
String id = idField.getText();
String password = passwordField.getText();
String[] result = isExist(id); if (result == null) {
JOptionPane.showMessageDialog(null, "该帐号不存在"); } else { if (result[0].equals(id) && result[1].equals(password)) {
JOptionPane.showMessageDialog(null, "登录成功"); } else {
JOptionPane.showMessageDialog(null, "登录失败,帐号密码不匹配");
} }
} private void registerButtonActionPerformed(ActionEvent e) { String id = idField.getText();
String password = passwordField.getText();
String[] result = isExist(id);
if (result == null) {
writeFile(id, password);
JOptionPane.showMessageDialog(null, "注册成功");
} else {
JOptionPane.showMessageDialog(null, "注册失败,该帐号已存在");
} } private String[] isExist(String id) { String[] strList = new String[2]; try {
File file = new File("user.txt");
Scanner in = new Scanner(file);
while (in.hasNextLine()) {
String line = in.nextLine();
strList = line.split(" ");
if (strList[0].equals(id)) {
return strList;
} }
in.close();
} catch (FileNotFoundException ex) { }
return null; } private void writeFile(String id, String password) { String matching = id + " " + password;
try {
File file = new File("user.txt");
PrintWriter out = new PrintWriter(file);
out.println(matching);
out.close();
} catch (FileNotFoundException ex) {
ex.printStackTrace();
} }

3.统计本周完成的代码量

需要将每周的代码统计情况融合到一张表中。

201621123008《Java程序设计》第七周学习总结

周次 总代码量 新增文件代码量 总文件数 新增文件数
1 665 20 20 20
2 1705 23 23 23
3 1834 30 30 30
4 1073 1073 17 17
5 1073 1073 17 17
6 2207 1134 44 27
7 3292 1085 59 15
8 3505 213 62 3