[C#]디지털 시계
private void CreateSegment(Control ctl, int number)
{
Graphics g = ctl.CreateGraphics();
Pen p = new Pen(Color.Orange, 10);
Point po1 = new Point(10, 10);
Point po2 = new Point(10, 50);
Point po3 = new Point(10, 90);
Point po4 = new Point(60, 10);
Point po5 = new Point(60, 50);
Point po6 = new Point(60, 90);
g.Clear(Color.Black);
if (number == 0)
{
g.DrawLine(p, po1, po2);
g.DrawLine(p, po2, po3);
g.DrawLine(p, po1, po4);
g.DrawLine(p, po3, po6);
g.DrawLine(p, po4, po5);
g.DrawLine(p, po5, po6);
}
if (number == 1)
{
g.DrawLine(p, po4, po5);
g.DrawLine(p, po5, po6);
}
if (number == 2)
{
g.DrawLine(p, po1, po4);
g.DrawLine(p, po4, po5);
g.DrawLine(p, po2, po5);
g.DrawLine(p, po2, po3);
g.DrawLine(p, po3, po6);
}
if (number == 3)
{
g.DrawLine(p, po1, po4);
g.DrawLine(p, po4, po5);
g.DrawLine(p, po2, po5);
g.DrawLine(p, po5, po6);
g.DrawLine(p, po3, po6);
}
if (number == 4)
{
g.DrawLine(p, po1, po2);
g.DrawLine(p, po2, po5);
g.DrawLine(p, po4, po5);
g.DrawLine(p, po5, po6);
}
if (number == 5)
{
g.DrawLine(p, po1, po4);
g.DrawLine(p, po1, po2);
g.DrawLine(p, po2, po5);
g.DrawLine(p, po5, po6);
g.DrawLine(p, po3, po6);
}
if (number == 6)
{
g.DrawLine(p, po1, po2);
g.DrawLine(p, po2, po3);
g.DrawLine(p, po1, po4);
g.DrawLine(p, po2, po5);
g.DrawLine(p, po3, po6);
g.DrawLine(p, po5, po6);
}
if (number == 7)
{
g.DrawLine(p, po1, po4);
g.DrawLine(p, po4, po5);
g.DrawLine(p, po5, po6);
}
if (number == 8)
{
g.DrawLine(p, po1, po2);
g.DrawLine(p, po2, po3);
g.DrawLine(p, po1, po4);
g.DrawLine(p, po2, po5);
g.DrawLine(p, po3, po6);
g.DrawLine(p, po4, po5);
g.DrawLine(p, po5, po6);
}
if (number == 9)
{
g.DrawLine(p, po1, po2);
g.DrawLine(p, po1, po4);
g.DrawLine(p, po2, po5);
g.DrawLine(p, po3, po6);
g.DrawLine(p, po4, po5);
g.DrawLine(p, po5, po6);
}
p.Dispose();
g.Dispose();
Application.DoEvents();
}
private void timer1_Tick(object sender, EventArgs e)
{
CreateSegment(label1, DateTime.Now.Hour / 10);
CreateSegment(label2, DateTime.Now.Hour % 10);
CreateSegment(label3, DateTime.Now.Minute / 10);
CreateSegment(label4, DateTime.Now.Minute % 10);
CreateSegment(label5, DateTime.Now.Second / 10);
CreateSegment(label6, DateTime.Now.Second % 10);
}
7 세그먼트 형식으로 표시되는 시계 예제 소스입니다.