• 第二篇 Scrum冲刺博客


    一、站立式会议

    1.1 会议照片

    1.2成员工作情况

    成员 昨天已完成的工作 今天计划完成的工作 工作中遇到的困难
    马文辉 做好接下来六天的计划 实现水平方向和竖直方向的布局管理器,设置组件内边距和外边距的工具类 对布局管理不熟悉,查阅了许多资料
    卢力衔 做了一些Swing的尝试,模拟环境 设计一些闯关模式的规则,并尝试实现 有些规则难以在实际中实现
    张朝阳 明确模块,下载windowsbuilder 进行简单的主界面的设置,添加按钮 不太熟悉windowsbuilder,捣鼓半天
    张龙伟 明确任务 设计倒计时程序 没有用swing实现,不符合设计要求
    周勇铨 构思排名榜模块的整体架构 一些具体细节如参数名等需要与其他同学进行协商

    二、项目燃尽图

    三、代码/文档签入记录

    3.1 代码签入

    • 补充说明: 队员第一天git操作遇到问题未成功提交;工具类与第二天的代码结合一起才提交

    3.2 Issue链接

    成员 Issue链接
    马文辉 实现一些工具组件类1
    卢力衔 闯关模式
    张朝阳 主界面
    张龙伟 计时器模块
    周勇铨 排行榜

    3.3 CodeReview代码规范文档

    四、最新程序/模块

    4.1 程序代码

    package cn.homework.view;
    
    import java.awt.EventQueue;
    
    import javax.swing.JFrame;
    import javax.swing.JButton;
    import java.awt.BorderLayout;
    import java.awt.event.ActionListener;
    import java.awt.event.ActionEvent;
    import javax.swing.JPanel;
    import javax.swing.BoxLayout;
    import java.awt.Color;
    import java.awt.Dimension;
    
    import javax.swing.UIManager;
    import java.awt.Font;
    import java.awt.Image;
    
    import javax.swing.border.EmptyBorder;
    
    import cn.homework.util.SwingConsole;
    
    import java.awt.Toolkit;
    import javax.swing.ImageIcon;
    import javax.swing.JLabel;
    import javax.swing.SwingConstants;
    import java.awt.event.MouseAdapter;
    import java.awt.event.MouseEvent;
    
    import java.io.*;
    
    import java.awt.event.ComponentAdapter;
    import java.awt.event.ComponentEvent;
    import java.awt.SystemColor;
    
    public class PINTU {
    
    	public JFrame PINTU;
    	
    	/**
    	 * Launch the application.
    	 */
    	public static void main(String[] args) {
    		PINTU window = new PINTU();
    		
    		SwingConsole.run(window.PINTU);
    	}
    
    	/**
    	 * Create the application.
    	 */
    	public PINTU() {
    		initialize();
    	}
    
    	/**
    	 * Initialize the contents of the frame.
    	 */
    	public void closeThis(){
    		PINTU.dispose();
    	}
    	
    	private void initialize() {
    		PINTU = new JFrame();//框架的相关设置
    		PINTU.setIconImage(Toolkit.getDefaultToolkit().getImage(PINTU.class.getResource("/images/0427f65039b23489be76046b1cba8659.jpg")));
    		
    		PINTU.setTitle("u62FCu56FEu6E38u620F");
    		PINTU.setBackground(Color.WHITE);//框架背景
    		PINTU.getContentPane().setLayout(null);//将框架的布局管理器关掉
    		
    		
    		JButton Button_1 = new JButton("u7EC3u4E60u6A21u5F0F");//练习模式的按钮
    		Button_1.setFont(new Font("黑体", Font.PLAIN, 15));//字体设置
    		Button_1.setForeground(Color.BLACK);
    		Button_1.setBackground(Color.GREEN);//按钮背景色
    		Button_1.addActionListener(new ActionListener() {//练习模式的按钮事件,即扩展具体功能
    			public void actionPerformed(ActionEvent e) {
    				/**
    				 * 关闭当前窗口,打开选择图片的窗口
    				 */
    				closeThis();
    			    SelectPractice s = new SelectPractice("选择当前图片");
    			    SwingConsole.run(s);
    			}
    		});
    		Button_1.setBounds(165, 60, 120, 30);//按钮位置
    		PINTU.getContentPane().add(Button_1);//将按钮加入框架
    		
    		
    		JButton Button_2 = new JButton("u95EFu5173u6A21u5F0F");//闯关模式的按钮
    		Button_2.addActionListener(new ActionListener() {//闯关模式的按钮事件
    			public void actionPerformed(ActionEvent e) {
    				PINTU.dispose();
    				CHUANGGUAN_view view2 = new CHUANGGUAN_view();
    				
    			}
    		});
    		Button_2.setFont(new Font("黑体", Font.PLAIN, 15));//字体设置
    		Button_2.setBackground(Color.GREEN);//按钮背景色
    		Button_2.setBounds(165, 135, 120, 30);//按钮位置
    		PINTU.getContentPane().add(Button_2);//将按钮加入框架
    		
    		
    		JButton button_3 = new JButton("u6DFBu52A0u56FEu7247");//添加本地图片的按钮
    		button_3.addActionListener(new ActionListener() {//添加图片的按钮事件
    			public void actionPerformed(ActionEvent e) {
    				
    				JFileChooser chooser = new JFileChooser();
    		              chooser.setFileFilter(new FileNameExtensionFilter("JPG文件", "jpg"));
    		              int ret = chooser.showOpenDialog(PINTU);
    		              if(ret == JFileChooser.APPROVE_OPTION){
    		        	File file = chooser.getSelectedFile();
    		        	FileInputStream fis = null;
    		        	FileOutputStream fos = null;
    		        	try {
    		        		fis = new FileInputStream(file);
    		        		fos = new FileOutputStream("practise\" + file.getName());
    		        		int len = 0;
    		        		byte[] buf = new byte[1024];
    		        		while((len = fis.read(buf)) != -1) {
    		        			fos.write(buf, 0, len);
    		        		}
    		        	} catch(IOException exception) {
    		        		exception.printStackTrace();
    		        	} finally {
    		        		try {
    							fis.close();
    							fos.close();
    						} catch (IOException e1) {
    							e1.printStackTrace();
    						}
    		        		
    		        	}
    		        	JOptionPane.showMessageDialog(PINTU, "添加成功");
    		        }	
    			
    			}
    		});
    		button_3.setFont(new Font("黑体", Font.PLAIN, 15));//字体设置
    		button_3.setBackground(Color.GREEN);//按钮背景色
    		button_3.setBounds(165, 210, 120, 30);//按钮位置
    		PINTU.getContentPane().add(button_3);
    		
    		
    		JLabel Label = new JLabel("");
    		Label.setIcon(new ImageIcon(PINTU.class.getResource("/images/0427f65039b23489be76046b1cba8659.jpg")));
    		Label.setBackground(Color.WHITE);
    		ImageIcon image = new ImageIcon(PINTU.class.getResource("/images/0427f65039b23489be76046b1cba8659.jpg"));
    		Label.setBounds(0, 0, 450, 300);
    		PINTU.getContentPane().add(Label);
    		
    		
    		ImageIcon[] imageIcon = new ImageIcon[1];
    		PINTU.addComponentListener(new ComponentAdapter() {//拖动窗口监听,按钮、背景图随窗口大小自适应
                public void componentResized(ComponentEvent e) {  
                    int width=PINTU.getWidth();//获取窗口宽度
                    int height=PINTU.getHeight();//获取窗口高度
                    Button_1.setBounds(width*11/30, height/5, width*12/45, height/10);//按钮随窗口大小自适应
                    Button_2.setBounds(width*11/30, height*9/20,  width*12/45, height/10);
                    button_3.setBounds(width*11/30, height*7/10,  width*12/45, height/10);
                    
                    PINTU.remove(Label);//背景图自适应
                    Label.setBounds(0, 0, width, height);
                    imageIcon[0] = new ImageIcon(image.getImage().getScaledInstance(width, height, Image.SCALE_DEFAULT));
                    Label.setIcon(imageIcon[0]);
                    Label.setHorizontalAlignment(SwingConstants.CENTER);
                    PINTU.getContentPane().add(Label);
                }  
    
            }); 
    	}
    }
    

    4.2 运行截图

    五、每人每日总结

    成员 小结
    马文辉 时间是挤出来的,继续压榨时间出来开发
    卢力衔 需要多尝试,多探索
    张朝阳 用时4小时以上,由于初使用windowsbuilder,不太熟练,摸索式前进。
    张龙伟 我实现了java的计时程序,可是这跟我的计时窗口,又有什么关系呢。奔溃
    周勇铨 完整而具体的构思,还有与同学良好的沟通是一个比较好的开始
  • 相关阅读:
    Android清单文件详解(四) ---- backupAgent的用法
    Android清单文件详解(一) ---- 一切从<manifest>开始
    Android OpenGL ES(九)----构建几何物体
    Android OpenGL ES(八)----纹理编程框架
    Android OpenGL ES(七)----理解纹理与纹理过滤
    Android OpenGL ES(六)----进入三维在代码中创建投影矩阵和旋转矩阵
    Android OpenGL ES(五)----进入三维正交投影和透视投影推导
    Android OpenGL ES(四)----调整屏幕的宽高比
    获取验证码按钮点击后,一分钟内不可继续点击
    选择本地图片后,上传前显示在界面上,实现实时预览
  • 原文地址:https://www.cnblogs.com/Mhuihui/p/12976913.html
Copyright © 2020-2023  润新知