Решение. Сохраните текущее состояние проекта, выбрав пункт Сохранить все меню Файл или воспользовавшись клавишей на панели быстрого доступа

Сохраните текущее состояние проекта, выбрав пункт Сохранить все меню Файл или воспользовавшись клавишей на панели быстрого доступа .

Создайте в том же решении новый проект, укажите его имя Ex2 и установите его стартовым.

Решим поставленную задачу. Во‑первых, отметим, что с помощью события Click невозможно определить, какая кнопка мыши была нажата. Параметр e в этом событии имеет тип EventArgs, который не предоставляет подобной информации. Для выполнения задания мы воспользуемся другим событием – MouseClick. Параметр e в этом событии имеет тип MouseEventArgs и предоставляет гораздо больше информации, например какая кнопка мыши была нажата, сколько раз, на сколько было повернуто колесико мыши, а также координаты мыши в момент генерации события.

Для получения различных цветов для формы воспользуемся методом FromArgb () класса Color. Будем передавать этому методу три параметра – уровни интенсивности красного, зеленого и синего цветов, соответственно (Red, Green, Blue). Для каждого уровня интенсивности цвета существует 256 возможных значений. Например, метод с параметрами (255, 0, 0) возвращает цветовое значение для красного цвета.

Для получения случайного цвета все три параметра будем задавать случайными числами. В языке C # для генерации случайных чисел предусмотрен специальный класс Random. Для того чтобы воспользоваться методами этого класса, необходимо создать экземпляр класса с помощью конструктора (используя new). Для выбора случайного числа из диапазона [0, n –1] будем использовать метод Next (n). Описать переменную Rand нужно в классе формы:

public partial class Form1: Form

{

Random Rand;

В конструкторе формы (методе, имя которого совпадает с именем формы) добавьте оператор, инициализирующий генератор случайных чисел.

public Form1()

{

InitializeComponent();

//Инициализация генератора случайных чисел

Rand = new Random();

}

В обработчике события MouseClick при щелчке левой кнопкой мыши будем формировать три случайных числа и устанавливать цвет формы.

private void Form1_MouseClick(object sender, MouseEventArgs e)

{

if (e.Button == MouseButtons.Left)

{

//Определение трех целых случайных чисел [0..255]

int a = Rand.Next(256);

int b = Rand.Next(256);

int c = Rand.Next(256);

BackColor = Color.FromArgb(a, b, c);

}

}

Запустите приложение. Убедитесь, что после каждого щелчка по форме левой кнопкой мыши цвет изменяется произвольным образом.

Упражнение 3.3. Напишите приложение, в котором при нажатии на левую кнопку мыши происходит смена цвета с красного на синий и, наоборот, с синего на красный.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: