Как одновременно отобразить время из разных стран? - C#
Формулировка задачи:
Всем Доброго времени суток. У меня возникла проблема с написание программы которая должна отображать время трех стран по очереди с интервалом в несколько секунд. Моя проблема в том, что я не понимаю как сделать так чтобы время являлось не локальным,что нудно добавить чтобы отобразить время Германии, Латвии и Англии в данный момент. помогите пожалуйста.
Всем Спасибо =)
Листинг программы
- namespace WorldTime_2._0
- {
- public partial class Form1 : Form
- {
- public Form1()
- {
- InitializeComponent();
- }
- private void Form1_Load(object sender, EventArgs e)
- {
- timer1.Start();
- timer2.Start();
- }
- private void timer1_Tick(object sender, EventArgs e)
- {
- if(pictureBox1.Visible == true) // Germ
- {
- pictureBox1.Visible = false;
- pictureBox2.Visible = true;
- pictureBox3.Visible = false;
- }
- else if (pictureBox2.Visible == true) // Latvia
- {
- pictureBox2.Visible = false;
- pictureBox3.Visible = true;
- pictureBox1.Visible = false;
- }
- else if (pictureBox3.Visible == true) // UK
- {
- pictureBox3.Visible = false;
- pictureBox1.Visible = true;
- pictureBox2.Visible = false;
- }
- }
- private void lblUK_Click(object sender, EventArgs e)
- {
- lblUK.Text = DateTime.Now.ToLongTimeString();
- }
- private void lblGer_Click(object sender, EventArgs e)
- {
- }
- private void timer2_Tick(object sender, EventArgs e)
- {
- if (lblGer.Visible == true)
- {
- lblGer.Visible = false;
- lblLatvia.Visible = true;
- lblUK.Visible = false;
- lblGermTime.Visible = false;
- lblLatviaTime.Visible = true;
- lblLondonTime.Visible = false;
- }
- else if (lblUK.Visible == true)
- {
- lblUK.Visible = false;
- lblGer.Visible = true;
- lblLatvia.Visible = false;
- lblLondonTime.Visible = false;
- lblGermTime.Visible = true;
- lblLatviaTime.Visible = false;
- }
- else if (lblLatvia.Visible == true)
- {
- lblLatvia.Visible = false;
- lblUK.Visible = true;
- lblGer.Visible = false;
- lblLatviaTime.Visible = false;
- lblLondonTime.Visible = true;
- lblGermTime.Visible = false;
- }
- }
- private void BtnExit_Click(object sender, EventArgs e)
- {
- this.Close();
- }
- private void lblLatvia_Click(object sender, EventArgs e)
- {
- }
- private void lblLatviaTime_Click(object sender, EventArgs e)
- {
- timer3.Start();
- lblLatviaTime.Text = DateTime.Now.ToString("T");
- }
- private void timer3_Tick(object sender, EventArgs e)
- {
- lblLatviaTime.Text = DateTime.Now.ToString("T");
- lblLondonTime.Text = DateTime.Now.ToString("T");
- lblGermTime.Text = DateTime.Now.ToString("T") ;
- timer3.Start();
- }
- private void label1_Click(object sender, EventArgs e)
- {
- timer3.Start();
- lblLondonTime.Text = DateTime.Now.ToString("T");
- }
- private void label2_Click(object sender, EventArgs e)
- {
- timer3.Start();
- lblGermTime.Text = DateTime.Now.ToString("T");
- }
- }
- }
Немного поясню, суть в том что при смене картинки меняется время, всего 3 картинки и 3 времени, Сама функция смены работает прекрасно, вот только с одним и тем же временем .
Решение задачи: «Как одновременно отобразить время из разных стран?»
textual
Листинг программы
- //получаем часовой пояс для германии
- var germanyZone = TimeZoneInfo.FindSystemTimeZoneById("W. Europe Standard Time");
- //получаем текущее местное время для германии
- var germanyNow = TimeZoneInfo.ConvertTime(DateTime.Now, germanyZone);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д