java 秒表课程设计_Java课程设计-定时器

Java课程设计--定时器

1.团队课程设计博客链接

2.个人负责模块或任务说明

框架构建

时间设置面板,倒计时面板

按钮设置

3.自己的代码提交记录截图

f3c48ab542cb033c44178f7ed63c08a9.png

4.自己负责模块或任务详细说明

1.框架构建

public TimeFrame() {

add(new TimePanel());

this.setTitle("定时器");

this.setSize(1200, 800);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setLocationRelativeTo(null);

this.setResizable(false);

this.setVisible(true);

}

2.创建类

class TimePanel extends JPanel implements ActionListener, KeyListener, Runnable {

/**

*

*/

private static final long serialVersionUID = 1L;

private int setTime;

private int showTime;

// 定义是否计时变量

private boolean flag = false;

private JPanel jpShowTime, jpSetting, jpTimeInfo;

private JLabel labTime, labSetTime, labPassTime, labRemainTime;

private JButton btnBegin;

private JButton btnPause;

private JButton btnContinue;

private JButton btnHidden;

private JButton btnShow;

private JButton btnExit;

// 倒计时设置

private JPanel jpTimeSetting;

private JTextField tfdHours;

private JTextField tfdMinutes;

private JTextField tfdSeconds;

public TimePanel() {

this.setSize(1200, 800);

this.setLayout(null);

createSetting();

createShowTime();

jpSetting.addKeyListener(this);

jpSetting.setFocusable(true);

}

3.创建倒计时面板、设置时间面板、倒计时属性面板、时间信息面板

void createShowTime() {

jpShowTime = new JPanel();

jpShowTime.setSize(1200, 400);

jpShowTime.setBackground(Color.BLACK);

labTime = new JLabel("00 : 00 : 00", JLabel.CENTER);

labTime.setFont(new Font("微软雅黑", 1, 200));

labTime.setForeground(Color.RED);

jpShowTime.add(labTime);

add(jpShowTime).setBounds(0, 400, 1200, 400);

}

void createSetting() {

jpSetting = new JPanel();

jpSetting.setSize(1200, 400);

jpSetting.setLayout(null);

createTimeSetting();

createTimeInfo();

// 开始按钮

btnBegin = new JButton("开始[F8]");

jpSetting.add(btnBegin).setBounds(700, 50, 80, 50);

// 暂停按钮

btnPause = new JButton("暂停[F9]");

jpSetting.add(btnPause).setBounds(800, 50, 80, 50);

// 继续按钮

btnContinue = new JButton("继续[F10]");

jpSetting.add(btnContinue).setBounds(900, 50, 80, 50);

// 隐藏按钮

btnHidden = new JButton("隐藏[F11]");

jpSetting.add(btnHidden).setBounds(700, 120, 80, 50);

// 显示按钮

btnShow = new JButton("显示[F12]");

jpSetting.add(btnShow).setBounds(800, 120, 80, 50);

// 帮助按钮

btnExit = new JButton("退出");

jpSetting.add(btnExit).setBounds(900, 120, 80, 50);

btnBegin.addActionListener(this);

btnPause.addActionListener(this);

btnContinue.addActionListener(this);

btnHidden.addActionListener(this);

btnShow.addActionListener(this);

btnExit.addActionListener(this);

add(jpSetting).setBounds(0, 0, 1200, 400);

}

void createTimeSetting() {

jpTimeSetting = new JPanel();

jpTimeSetting.setSize(300, 200);

jpTimeSetting.setLayout(new FlowLayout());

jpTimeSetting.add(tfdHours = new JTextField(3));

jpTimeSetting.add(new JLabel("时"));

jpTimeSetting.add(tfdMinutes = new JTextField(3));

jpTimeSetting.add(new JLabel("分"));

jpTimeSetting.add(tfdSeconds = new JTextField(3));

jpTimeSetting.add(new JLabel("秒"));

tfdHours.addKeyListener(this);

tfdMinutes.addKeyListener(this);

tfdSeconds.addKeyListener(this);

jpSetting.add(jpTimeSetting).setBounds(100, 100, 300, 200);

}

void createTimeInfo() {

jpTimeInfo = new JPanel();

jpTimeInfo.setLayout(null);

jpTimeInfo.setBackground(new Color(154, 217, 250));

jpTimeInfo.setSize(1200, 100);

// 总秒数

labSetTime = new JLabel("计时总秒数 : ", JLabel.CENTER);

labSetTime.setFont(new Font("微软雅黑", 0, 20));

jpTimeInfo.add(labSetTime).setBounds(0, 10, 400, 80);

// 已过秒数

labPassTime = new JLabel("已过秒数 : ", JLabel.CENTER);

labPassTime.setFont(new Font("微软雅黑", 0, 20));

jpTimeInfo.add(labPassTime).setBounds(400, 10, 400, 80);

// 剩余秒数

labRemainTime = new JLabel("剩余秒数 : ", JLabel.CENTER);

labRemainTime.setFont(new Font("微软雅黑", 0, 20));

jpTimeInfo.add(labRemainTime).setBounds(800, 10, 400, 80);

jpSetting.add(jpTimeInfo).setBounds(0, 300, 1200, 100);

}

5.课程设计感想

虽然时间紧迫,但是做了组长还是要负责好课设,于是和组员一直讨论要怎么搞才好,沟通交流是做课设最主要的,分配好各自的工作然后讨论交流才让我们的课设最终完成。最后的最后,不懂的~要百度~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值