闹钟时钟 系统设计与开发
系统开发与设计的目的与背景
由于我们的活动离不开查看时间,闹钟设置也成为我们生活的必需,所以我利用基础章节 (VS环境和语言基础+接口)+图形图像 完成一个表盘钟表+数字时钟+闹钟+秒表计时器 的 闹钟时钟小系统设计。
系统框架与核心功能
系统流程图
1.确认设计目的,清楚自己要完成的是什么(表盘钟表+数字时钟+闹钟设计+秒表计 时器);
2.进行窗体界面设计;
3.代码设计;
4.测试功能是否实现。
核心功能
1.使用画图工具绘制一个表盘钟表(时针、分针、秒针动态显示时间);
2.在钟表右边显示动态数字时钟(数字显示年、月、日、时、分、秒);
3.可设置闹钟:
① 设定时间为某时某分。
② 设定闹钟的重复日期为:周一、周二、周三、周四、周五、周六、周日中的 某几天(不能不选)。
③ 到达指定日期的闹钟时间,显示提示信息表示闹钟响了。
4.设计秒表计时器。
①点击“开始”开始计时
②点击“暂停”暂停计时
③点击“停止”停止计时,
④再点击“开始”,重新开始计时。
主要技术
1.C#(Windows 窗体应用 .NET Framework)
2.C#图形图像编程
系统开发环境
Visual Studio 2019(Windows 窗体应用 .NET Framework)
开发步骤及思路
窗体Form1界面设计(主要控件及属性)
控件 Name text
Timer Timer1 Interval:1000(1s)
Timer2 秒表计时器的timer
label label1 数字时钟时间
label2 时
Lable4 秒表计时器
Lable5 显示秒表计时时间
groupBox groupBox1 闹钟时间
groupBox2 重复时间
TextBox tbHour
tbMinute
CheckBox checkBox1 周日
checkBox2 周一
checkBox3 周二
checkBox4 周三
checkBox5 周四
checkBox6 周五
checkBox7 周六
界面控件功能简单介绍:
1.左边空白区域显示表盘钟表;
2.右边label1:数字形式显示时间(包括年、月、日、时、分、 秒);
3.右边groupBox1设置闹钟时间(时、分);
4.右边groupBox2设定闹钟的重复日期(周日到周一中的几天,不能不选);
5.右边Button2确认闹钟设置;
6.点击“开始”开始计时,点击“暂停”暂停计时,点击“停止”停止计时,再 点击“开始”,重新开始计时。
绘制表盘钟表(主要利用图形图像编程)
核心功能:
画一个表盘钟表(时针、分针、秒针动态显示时间)。
代码如下:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace MyClock
{
public partial class Form1 : Form
{
private Graphics m_graphic;
private Timer m_timer;
private float m_width;
private float m_height;
//背景颜色
private Color m_bgcolor;
//内圆颜色
private Color m_backcolor;
//刻度颜色
private Color m_scalecolor;
//秒针颜色
private Color m_seccolor;
//分针颜色
private Color m_mincolor;
//时针颜色
private Color m_hourcolor;
//半径
private float m_radius;
public Form1()
{
InitializeComponent();
}
//一运行窗体即显示钟表
private void Form1_Load(object sender, EventArgs e)
{
this.FormBorderStyle = FormBorderStyle.FixedSingle;
this.MaximizeBox = false;
this.SetStyle(ControlStyles.AllPaintingInWmPaint, true);
this.SetStyle(ControlStyles.OptimizedDoubleBuffer, true);
m_timer = new Timer();
m_timer.Interval = 1000;
m_timer.Enabled = true;
m_timer.Tick += new EventHandler(Timer_Tick);
m_width = this.ClientSize.Width;
m_height = this.ClientSize.Height;
//颜色设置
m_bgcolor = Color.Brown;
m_backcolor = Color.LightPink;
m_scalecolor = Color.Black;
m_seccolor = Color.Green;
m_mincolor = Color.Blue;
m_hourcolor = Color.Red;
if