一、Visual Studio创建一个WPF项目。
简单调整一下MainWindow.xaml文件。主要使用了两个Canvas控件,分别用于显示模拟和数字时钟,命名为AnalogCanvas、digitCanvas。代码如下:
Title="Moon Clock"Height="600"Width="1280"WindowStartupLocation="CenterScreen">
二、模拟时钟先来。
(1)在MainWindow.xaml.cs先定义几个字段变量
//共用字段
DispatcherTimer timer = new DispatcherTimer(); //计时器
DateTime CurrTime = DateTime.Now; //当前时间//模拟时钟字段定义
double radius = 250; //圆半径
double angle = 360; //角度
Point Opos = new Point(); //原点位置
Line HourLine, MinuLine, SecdLine; //时针、分针、秒针
这几个变量足够了。
(2)在构造函数初始化变量
publicMainWindow()
{
InitializeComponent();//原点位置
Opos = new Point(250, 250);//初始化计时器
timer.Interval = TimeSpan.FromMilliseconds(100);
timer.Tick+=Timer_Tick;//初始化时钟针
HourLine = newLine();
MinuLine= newLine();
SecdLine= newLine();
}
(3)定义几个画表盘的方法
都是先定义图形,然后添加到AngleCanvas中显示出来
///
///画表盘外圆///
private voidDrawCircle()
{
Ellipse ellipse= newEllipse();
ellipse.Stroke=Brushes.DarkGray;
ellipse.StrokeThickness= 4;
ellipse.Width= 500;
ellipse.Height= 500;
ellipse.Fill=Brushes.Gray;
Canv