Загрузка данных
using System;
using System.Drawing;
using System.Windows.Forms;
namespace Lab5_and_6
{
public partial class Form1 : Form
{
// Генератор случайных чисел для задания цвета
Random rnd = new Random();
public Form1()
{
InitializeComponent();
// Настройка PictureBox, чтобы картинка вписывалась в рамки (как на стр. 25)
pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;
// По умолчанию картинка скрыта (для Задания 6)
pictureBox1.Visible = false;
}
// ==========================================
// ЗАДАНИЕ 5 (и флажки со стр. 36)
// ==========================================
// 1. Кнопка меняет СВОЙ цвет на красный
private void btnRed_Click(object sender, EventArgs e)
{
btnRed.BackColor = Color.Red;
}
// 2. Кнопка меняет цвет ОКНА на голубой
private void btnBlue_Click(object sender, EventArgs e)
{
this.BackColor = Color.LightBlue;
}
// 3. Кнопка меняет цвет окна случайным образом
private void btnRandColor_Click(object sender, EventArgs e)
{
this.BackColor = Color.FromArgb(rnd.Next(256), rnd.Next(256), rnd.Next(256));
}
// 4. Выбор цвета из палитры (по гайду со стр. 23)
private void btnPalette_Click(object sender, EventArgs e)
{
if (colorDialog1.ShowDialog() == DialogResult.OK)
{
this.BackColor = colorDialog1.Color;
}
}
// Кнопка ОК (применяет цвет в зависимости от выбранного переключателя)
private void btnOK_Click(object sender, EventArgs e)
{
if (rbYellow.Checked) this.BackColor = Color.Yellow;
else if (rbWhite.Checked) this.BackColor = Color.White;
else if (rbRandom.Checked) this.BackColor = Color.FromArgb(rnd.Next(256), rnd.Next(256), rnd.Next(256));
}
// Кнопка Выход (внизу слева)
private void btnExit_Click(object sender, EventArgs e)
{
Application.Exit();
}
// --- Флажки (CheckBox) ---
// Разовое изменение заголовка
private void chkTitle_CheckedChanged(object sender, EventArgs e)
{
if (chkTitle.Checked) this.Text = "Новый заголовок";
else this.Text = "Заголовок";
}
// Изменение цвета окна на синий
private void chkBlue_CheckedChanged(object sender, EventArgs e)
{
if (chkBlue.Checked) this.BackColor = Color.Blue;
}
// Завершение работы
private void chkExit_CheckedChanged(object sender, EventArgs e)
{
if (chkExit.Checked) Application.Exit();
}
// ==========================================
// ЗАДАНИЕ 6 (Работа с изображениями)
// ==========================================
// Выбор изображения (по гайду со стр. 23/25)
private void btnSelectImg_Click(object sender, EventArgs e)
{
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
try
{
// Загружаем картинку. StretchImage мы уже задали в конструкторе.
pictureBox1.Image = new Bitmap(openFileDialog1.FileName);
}
catch (Exception)
{
MessageBox.Show("Не удалось загрузить изображение. Выберите графический файл (jpg, png).");
}
}
}
// Показать картинку
private void btnShow_Click(object sender, EventArgs e)
{
if (pictureBox1.Image != null)
pictureBox1.Visible = true;
else
MessageBox.Show("Сначала выберите изображение!");
}
// Скрыть картинку
private void btnHide_Click(object sender, EventArgs e)
{
pictureBox1.Visible = false;
}
}
}