Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
методичка ПрИн академия 2013.doc
Скачиваний:
5
Добавлен:
01.05.2025
Размер:
6 Мб
Скачать
☆

Лабораторная работа № 2 Работа с контролами CheckBox, RadioButton и диалоговыми окнами MessageBox

1. Контрол CheckBox

Необходим для ответа ДА/НЕТ, хотя данный контрол в его настоящем имеет еще одно состояние - неопределенное. 

Свойства: 

1. Text - Надпись рядом с галочкой. Обычно вопрос. 

2. CheckState - Состояние контрола. (Отмечен/ не отмечен/ неопределенно )

3. ThreeState - Указывает позволять или нет выбирать третье состояние (Неопределенное)

4. Checked - Возвращает true если контрол отмечен, false если не отмечен

События: 

Основным событием является CheckedChanged – работает, когда изменено состояние контрола. Пример изменения совйства Text

private void checkBox1_Click(object sender, System.EventArgs e)

{

// изменение свойства Text

if (checkBox1.Checked)

{ checkBox1.Text = "Checked"; }

else

{ checkBox1.Text = "Unchecked"; }}

Пример: вывод сообщения, при выборе checkBox1.

private void checkBox1_CheckedChanged(object sender, EventArgs e) {    MessageBox.Show(checkBox1.Checked.ToString());

}

2. Контрол RadioButton

RadioButton по свойствам схож с контролом CheckBox. Он также имеет свойство Checked, определяющее текущее состояние кнопки: нажата она или нет. Отличие RadioButton от CheckBox заключается в том, что группа объектов CheckBox позволяет выбрать комбинацию значений, а группа объектов RadioButton - только одно значение.

Свойства: 

1. Text - вариант ответа 

2. Checked - возвращает true если контрол отмечен, false если не отмечен 

События:

CheckedChanged – отрабатывает, когда изменено состояние контрола, для чего приходится использовать свойство Checked у каждого контрола входящего в группу 

3. Диалоговые окна MessageBox

При написании программ возникает необходимость выводить пользователю сообщения (например, нужно вывести сообщение об ошибке), либо спросить у пользователя о чем-то и получить от него ответ. Для этого используется класс MessageBox.

У MessageBox имеется метод - Show(), которые показывает модальное диалоговое окно. Его используют как по прямому назначению - вывод информации пользователю так и для отладочных целей. Поскольку в этом классе метод один, давайте подробно рассмотри все его перегруженные варианты.

Первый самой простой - вывод текста, передаваемого в параметре string, в модальное окно (рис. 2.1).

MessageBox.Show("Привет");

Рисунок 2.1 – Окно MessageBox

Добавим заголовок окна (рис. 2.2).

MessageBox.Show("Привет","Мое окно");

Рисунок 2.2 – Окно MessageBox с заголовком

Для того, чтобы спросить что-то у пользователя, нужно добавить на форму нужные кнопки из перечисления MessageBoxButtons (рис. 2.3).

MessageBox.Show("Привет","Мое окно",MessageBoxButtons.YesNoCancel);

Рисунок 2.3 – Окно MessageBox с заголовком и тремя вариантами ответа

В окне можно добавить иконку из перечисления MessageBoxIcon (рис. 2.4)

MessageBox.Show("Привет","Мое окно",MessageBoxButtons.YesNoCancel,MessageBoxIcon.Information);

Рисунок 2.4 – Окно MessageBox с заголовком, тремя вариантами ответа и иконкой

Из перечисления MessageBoxDefaultButton можно выбрать кнопку по умолчанию. Вот в принципе и все с этим замечательным классом, осталось только показать как узнать кнопку, которую нажал пользователь. Метод Show возвращает объект типа DialogResult, им-то мы и воспользуемся:

if (MessageBox.Show("Привет","Мое окно",MessageBoxButtons.YesNo,MessageBoxIcon.Question) == DialogResult.Yes)        MessageBox.Show("YES"); else        MessageBox.Show("NO");

ИНДИВИДУАЛЬНЫЕ ЗАДАНИЯ

  1. а) На форме имеется ряд кнопок с фамилиями. По нажатию на кнопку получить в окне MessageBox имя и отчество человека, чья фамилия выбрана.

б) Изменить цвет шрифта в надписи, используя компонент CheckBox и сделать то же самое с помощью радиокнопок.

  1. а) Вывести текст в различном цветовом диапазоне, в зависимости от того, какой цвет выбран.

б) Установить курсор в конец текста. При нажатии на клавиатуре кнопки Enter должно выводиться окно MessageBox с пиктограммой вопроса, текстом вопроса и 3 вариантами ответов.

  1. а) Пользователь вводит фамилию человека. Используя компонент RadioButton, произвести вывод фамилии человека и его пола в текстовом виде в зависимости от состояния компонентов RadioButton.

б) При нажатии кнопки Button вывести подтвеждающее сообщение в окне MessageBox.

в) Изменить цвет шрифта в поле ввода с использованием компонента CheckBox и сделать то же самое с помощью радиокнопок.

  1. а) Имеются три окна вывода текстовой информации. Для каждого окна вывода предусмотрена ячейка состояния CheckBox. Пользователь вводит строку символов, которая отображается в тех окнах вывода, где установлена «галочка». При снятии «галочки» текст из соответствующего окна исчезает.

б) Изменить цвет шрифта в поле ввода с использованием компонента CheckBox и сделать то же самое с помощью радиокнопок.

в) При нажатии кнопки Button вывести предупреждающее сообщение в окне MessageBox.

  1. а) На форме имеются кнопки «Форматировать», «Удалить», «Очистить». Для каждой кнопки предусмотреть предупредительное сообщение, используя компонент MessageBox.

б) Изменить цвет шрифта в компоненте Label, используя компонент CheckBox и сделать то же самое с помощью радиокнопок.

  1. а) Вывест текст различными размерами, в зависимости от того, какой размер выбран (используется компонент RadioButton).

б) Установить курсор в конец текста. При нажатии на клавиатуре кнопки Enter должно выводиться вопросительное сообщение MessageBox с пиктограммой вопроса, текстом вопроса и 3 вариантами ответов.

  1. а) Пользователь вводит фамилию человека и его статус (женат, холост), используя компоненты RadioButton. Произвести вывод фамилии и статуса в текстовом поле вывода.

б) Изменить цвет шрифта в поле вывода, используя компонент CheckBox и сделать то же самое с помощью радиокнопок.

в) Установить курсор в конец текста. При нажатии на клавиатуре кнопки Enter должно выводиться подтвеждающее сообщение MessageBox .

  1. а) На форме имеется 3 поля ввода для ввода суммы долга и 3 кнопки с фамилиями должников. Щелчком по кнопке выдать окно MessageBox с указанием фамилии должника и суммы долга.

б) Изменить цвет шрифта в поле ввода, используя компонент CheckBox и сделать то же самое с помощью радиокнопок.

в) Установить курсор в конец текста. При нажатии на клавиатуре кнопки Enter должно выводиться предупреждающее сообщение MessageBox .

9. а) Создать два списка. В первый с помощью кнопки «Добавить в 1-ый» добавляются строки, введённые в поле ввода. С помощью кнопки «Добавить из 1-ого во 2-ой» из первого списка добавляются строки во второй. С помощью кнопки «Удалить» из второго списка удаляются строки.

б) Изменить цвет шрифта в названии списка, используя компонент CheckBox и сделать то же самое с помощью радиокнопок.

10. а)Пользователь вводит число строк и столбцов таблицы. При нажатии на кнопку «Показать таблицу» высвечивается таблица с заголовками: «наименование товара», «количество», «цена», «общая сумма». Имеются поля ввода: «наименование товара», «количество», «цена». При щелчке на кнопку «Ввести в таблицу» введенные значения заносятся в таблицу. При щелчке на кнопку «Расчет» в таблице высвечивается результат перемножения «количества» и «цены».

б) Изменить цвет поля в названии таблицы, используя компонент CheckBox и сделать то же самое с помощью радиокнопок.