Лабораторная работа № 2. Тема: «Элементы управления для ввода и вывода информации»


Теоретический материал.

Для организации интерфейса и взаимодействия с пользователем разработано большое число элементов управления. Все они обладают обширным набором свойств, методов и событий.

Для ввода информации пользователем в окне формы могут быть использованы такие элементы как поле со списком – ComboBox, текстовое поле – TextBox, список – ListBox, для ввода значений даты предназначен элемент Календарь – MonthCalendar и объекты диалоговых окон. Для вывода информации используют следующие элементы управления: текстовое поле – TextBox, метка – Label, многострочное текстовое поле – RichTextBox, список – ListBox. Рассмотрим особенности этих элементов управления.

 

Расположите на форме элементы TextBox, ComboBox, ListBox, Button, MonthCalendar, Label

Not SupportedРисунок 1 —  Шаблон формы для обмена данными двух списков

 

Для первого объекта Кнопка установить свойство Text – ‘>’

Для второго объекта Кнопка установить свойство Text – ‘>>’

Для объекта Список в окне свойств выбрать

Not Supportedпосле нажатия появится диалоговое окно, в котором ввести значения пунктов списка ( см. рисунок).

 

Not Supported

Рисунок – Диалоговое окно создания пунктов списка

В результате, в окне конструктора формы вы увидите

Not Supported

 

Аналогично создаются пункты поля со списком.

Для объекта Поле со списком (ComboBox) в окне свойств выбрать

Not Supportedпосле нажатия появится диалоговое окно, в котором ввести значения пунктов списка ( см. рисунок).

Not Supported

Обработчик события Click первой кнопки переносит выбранную группу элементов одного списка в конец другого списка, (если включено свойство Sorted, то автоматически поддерживается сортировка списка). Переносимые элементы удаляются из первого списка. Вторая кнопка реализует операцию переноса всех элементов списка. Направление переноса — из левого списка в правый и обратно — задается заголовками («>«, «>>«) или («<«, «<<«), изображенными на кнопках. Заголовки меняются автоматически в обработчиках события Enter, возникающих при входе в левый или правый списки — listBox1 или listBox2.

Создайте обработчик события Enter для каждого из списков и введите следующий программный код:

Not Supported

Введите следующий программный код в обработчике события Click для командных кнопок, осуществляющих перенос данных между списками:

Not Supported

Обработчики событий устроены достаточно просто — они вызывают соответствующий метод, передавая ему нужные аргументы в нужном порядке. Рассмотрим метод, переносящий множество отобранных пользователем элементов из одного списка в другой:

Not Supported

Для добавления выделенных пользователем элементов к другому списку используется коллекция SelectedItems и метод Add, поочередно добавляющий элементы коллекции.

Для удаления выделенных элементов из списка list1 используется коллекция индексов. Обратите внимание, при удалении элемента с заданным индексом из любой коллекции индексы оставшихся элементов автоматически пересчитываются. Поэтому удаление элементов происходит в обратном порядке, начиная с последнего, что гарантирует корректность оставшихся индексов.

Следующий метод, переносит все элементы списка:

Not Supported

Добавим еще одну функциональную возможность — разрешим переносить элементы из одного списка в другой двойным щелчком кнопки мыши. Для этого зададим обработчики события DoubleClick для списков:

Not Supported

Для заполнения первого списка данными, введенными в текстовое поле по двойному щелчку мыши.

Добавить событие для объекта TextBox – DoubleClick., в котором ввести следующий программный код:

Not Supported

Для заполнения второго списка данными, введенными в поле со списком.

Дважды щелкнуть по объекту ComboBox, в котором ввести следующий программный код:

Not Supported

 

Для вывода значения даты из объекта Календарь в объекте Метка, необходимо дважды щелкнуть по объекту Календарь в конструкторе формы и ввести следующий программный код:

Not Supported

 

Таким образом, для того чтобы считать введенные пользователем данные

в текстовое поле string a = textBox1.Text;

в поле со списком string a = comboBox1.Text;

в календаре    

string a = monthCalendar1.SelectionStart.Date.ToString();   

в список string a = listBox1.SelectedItem.ToString();

 

 

Для вывода значений

 

в текстовое поле

textBox1.Text= выводимое значение, преобразованное в строковый тип.

В объект Метка

label1.Text = выводимое значение, преобразованное в строковый тип.

В список

listBox1.Items.Add(выводимое значение, преобразованное в строковый тип)

 

 

Задание на лабораторную работу

Изучить теоретический материал.

Реализовать примеры, рассмотренные в теоретической части.

Протестировать работу приложения

Выполнить индивидуальное задание.

Самостоятельно с помощью учебной литературы рассмотреть дополнительные свойства и методы элементов управления ComboBox, TextBox, ListBox, Label, RichTextBox, MonthCalendar.

 

Варианты индивидуальных заданий.

Вариант 1.

Дано трехзначное число. Определить является ли сумма его цифр двузначным числом.

Напечатать таблицу перевода в виде списка 1, 2, …, 20 долларов США в рубли по текущему курсу (значение курса вводится с клавиатуры)

N целых чисел вводится в объект список. Выяснить, верно ли, что сумма тех чисел которые не превышают М, кратна целому числу Р.

 

Вариант 2.

Дано трехзначное число. Определить больше ли числа А произведение его цифр .

Найти сумму всех целых чисел от — 10 до В.

N целых чисел вводится в объект список. Выяснить, верно ли, что количество положительных чисел не превышает A.

Вариант 3.

Дано трехзначное число. Определить, кратна ли сумма его цифр числу А.

Вычислить среднее арифметическое всех целых чисел от А до В.

N целых чисел вводится в объект список. Выяснить, верно ли, что количество тех чисел, которые меньше 20, равно пяти.

 

Вариант 4.

Дано четырехзначное число. Определить, равна ли сумма двух первых его цифр сумме двух его последних цифр.

Вычислить сумму квадратов всех целых чисел от 1 до n.

N целых чисел вводится в объект список. Выяснить, верно ли, что количество положительных чисел d, кратно X.

Вариант 5.

Дано четырехзначное число. Определить, кратно ли произведение его цифр числу А.

Вычислить среднее арифметическое всех целых чисел от А до В.

N целых чисел вводится в объект список. Выяснить, верно ли, что количество отрицательных чисел A превышает X.

Вариант 6.

Даны три вещественных числа а, b, с. Определить, имеется ли среди них хотя бы одна пара равных между собой чисел.

Дано натуральное число Приписать по двойке в начало и конец записи этого числа.

N целых чисел вводится в объект список. Выяснить, верно ли, что количество положительных чисел d, кратно трем.

 

Вариант 7.

Дано четырехзначное число. Определить входит ли в него цифра В.

Дано натуральное число. Удалить из него все цифры А.

N целых чисел вводится в объект список. Верно ли, что среди них нет троек.

 

Вариант 8.

Дано четырехзначное число. Определить входят ли в него цифры 3, 6 или 9.

Дано натуральное число. Переставить его первую и последние цифры.

N целых чисел вводится в объект список. Выяснить, верно ли, что количество тех из них, которые не больше 50, кратно четырем.

 

Вариант 9.

Дано натуральное число n (n= 9999). Выяснить, является ли оно палиндромом («перевертышем»), с учетом четырех цифр, как, например, числа 7777, 8338, 0330 и т.п. (палиндромом называется число, десятичная запись которого читается одинаково слева направо и справа налево).

Дано натуральное число. Приписать к нему такое же число.

N целых чисел вводится в объект список. Выяснить, верно ли, что количество положительных чисел превышает A.

 

Вариант 10.

Даны три вещественных числа. Возвести в квадрат те из них, значения которых неотрицательны.

Дано натуральное число. Определить номер цифры 3 в нем, считая от конца числа. Если такой цифры нет, ответом должно быть число 0, если таких цифр в числе несколько — должен быть определен номер самой правой из них.

N целых чисел вводится в объект список. Выяснить, верно ли, что сумма тех из них, которые меньше 15, превышает 60. Значение N задается пользователем.

 

Вариант 11.

Даны четыре целых числа. Определить сумму тех из них, которые кратны трем.

Дано натуральное число. Определить сумму m его последних цифр

N целых чисел вводится в объект список. Выяснить, верно ли, что количество положительных чисел не превышает 5.

 

Вариант 12.

Даны четыре целых числа. Определить сумму тех из них, которые кратны A.

Определить является ли введенное число степенью числа 3.

N целых чисел вводится в объект список. Выяснить, верно ли, что сумма тех из них, которые больше 20, превышает 100. Значение N задается пользователем.

Примечание: При выполнении индивидуальных заданий должны быть использованы все рассмотренные в теоретической части лабораторной работы элементы управления кроме MonthCalendar.

 

Дополнительный материал:

http://frolov-lib.ru/books/msnet/c_sharp2/ch06.html#_Toc153191360

 

 

КОНТРОЛЬНЫЕ ВОПРОСЫ:

 

Назначение, свойства и методы элемента управления ComboBox.

Назначение, свойства и методы элемента управления MonthCalendar.

Назначение, свойства и методы элемента управления RichTextBox.

Назначение, свойства и методы элемента управления Label.

Назначение, свойства и методы элемента управления ListBox.

Назначение, свойства и методы элемента управления TextBox.