Знайомство з панеллю статусу, створення панелі статусу в програмі "Снігопад".
Завдання
Порядок роботи
Відео-інструкція
Програмний код
Підсумки
Після вивчення матеріалів уроку ви повинні надати звіт (заповнити просту форму).
Добавлення до програми "Снігопад" панелі статусу та елементів для відображення набраних балів та часу, який залишився до кінця гри.
Подивитись відео-інструкцію.
Зробити зміни в своєму проекті. Програма повинна працювати так, як представлено на відео. Перевірити роботу програми, виправити помилки якщо вони є.
Заповнити та надіслати звіт.
На відео (15:56 хвилин):
- додавання панелі статусу в проект (елемент StatusStrip)
- дочірні елементи панелі статусу
- виведення значення балів в панелі статусу
- добавлення в проект ще одного таймеру для відліку часу
- виведення в панелі статусу значення часу, який залишився до кінця гри
- зупинка таймерів при досягненні кінця гри (час, що залишився, дорівнює 0)
Програмний код готової програми. Увага! Під час розробки програми вам не потрібно копіювати весь цей код, лише код обробників подій.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace SnowfallSteps
{
public partial class Form1 : Form
{
int score = 0;
int time = 60;
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
timer1.Start();
button1.Visible = false;
timer2.Start();
}
private void timer1_Tick(object sender, EventArgs e)
{
label1.Top += 5;
label2.Top += 7;
label3.Top += 3;
label4.Top += 10;
if (label1.Top > ClientSize.Height) label1.Top = -60;
if (label2.Top > ClientSize.Height) label2.Top = -70;
if (label3.Top > ClientSize.Height) label3.Top = -90;
if (label4.Top > ClientSize.Height) label4.Top = -60;
}
private void label1_Click(object sender, EventArgs e)
{
int bal = Convert.ToInt32(((Label)sender).Tag);
score += bal;
toolStripStatusLabel1.Text = "Score: " + score.ToString();
}
private void timer2_Tick(object sender, EventArgs e)
{
time--;
toolStripStatusLabel2.Text = "Time: " + time.ToString();
if(time == 0)
{
timer1.Stop();
timer2.Stop();
MessageBox.Show("Your score: " + score.ToString());
}
}
}
}
Скріншот зробленої програми надішліть мені на електронну пошту або на вайбер.
Заповніть форму: