Мне нравится писать программы по чьи-то примерам. Я так быстрее учусь программировать. Недавно писал простенький файловый менеджер, исходник которого был для консольного приложения. Немного поэксперементировав, я смог его сделать в Win Form. Что касается электронных часов - это первая программа, которую я вообще хотел написать. И вот ещё один вариант таких часов, но уже с использованием потоков.
Вот собственно реализация.
Вот собственно реализация.
namespace Clock2 { public partial class Form1 : Form { // делегат для манипулирования лейбом public delegate void DelegateForTime(Label label); // поле типа делегата DelegateForTime DelTime; // поток Thread t1; public Form1() { InitializeComponent(); DelTime = new DelegateForTime(StartTime); } private void Form1_Load(object sender, EventArgs e) { t1 = new Thread(LabelTime); t1.IsBackground = true; t1.Priority = ThreadPriority.Lowest; t1.Start(); } // устанавливает время void StartTime(Label label) { // выводим всегда две цыфры // (00:00) string s = DateTime.Now.Hour.ToString("00"); s += " : "; s += DateTime.Now.Minute.ToString("00"); s += " : " + DateTime.Now.Second.ToString("00"); label.Text = s; } void LabelTime() { while (true) { Invoke(DelTime, label1); } } } }
Комментариев нет:
Отправить комментарий