
2к3с Современные среды визуального программирования / Выполненная работа / Kontrolnaya_rabota
.pdfКонтрольная работа по дисциплине
«Современные среды визуального
программирования»
ЦЕЛЬ РАБОТЫ – изучить основные методы и приѐмы работы в визуальной среде программирования Microsoft Visual Studio.
СОДЕРЖАНИЕ И ТЕХНОЛОГИЯ РАБОТЫ
Задание №1. Написать программу-конвертор для перевода определенной суммы из долларов в рубли. В программе обязательно использовать следующие компоненты: Label, Button, TextBox и TabControl.
1.Запустить визуальную среду программирования Microsoft Visual
Studio.
2.В меню Файл выбрать команду Создать→Проект.
3.Откроется диалоговое окно Создать проект.
4.На панели Типы проектов разверните Visual C# и выберите шаблон Приложение Windows Forms.
5.В текстовом поле Имя задайте имя Zadanie (Рис. 5).
2

Рис.5. Окно Создать проект
6. Расположить на форме следующие компоненты (Рис.6):
контейнер вкладок tabControl1 (вкладка Контейнеры);
надписи label1, label2, label3;
кнопку button1;
поля ввода textBox1 и textBox1.
3

Рис.6. Форма проекта
7.Настроить вид компонента Form, для этого нужно сделать следующие действия:
в свойство изменения заголовка Text записать Задачи;
в свойстве местоположения формы при запуске приложения StartPosition
выбрать CenterScreen;
в свойстве MaximizeBox выбрать False;
в свойстве форматирования текста Font выбрать настройки как показано на рисунке 7.
Рис.7. Окно свойства Font
8.Настроить вид компонента label1, для этого нужно сделать следующие действие:
4
в свойство изменения заголовка Text записать Курс.
9.Настроить вид компонента label2, для этого нужно сделать следующие действие:
в свойство изменения заголовка Text записать Цена ($).
10. Настроить вид компонента label3, для этого нужно сделать следующие действия:
в свойстве отвечающее за отображение объекта Visible выбрать False;
в свойство изменения заголовка Text записать пробел.
11. Настроить вид компонента button1, для этого нужно сделать следующие действия:
в свойство изменения заголовка Text записать ОК.
12. Настроить вид компонента tabControl1, для этого нужно сделать следующие действия:
открыть окно настройки свойства TabPages (Рис.8);
удалить вкладку tabPage2;
для вкладки tabPage1 изменить свойство изменения заголовка Text на Задача 1.
5

Рис.8. Окно свойства Font
13. Настроить действие при нажатии на кнопку (компонент button1), для этого нужно сделать следующие действия:
двойным щелчком на компоненте button1 создать событие button1_Click;
в открывшемся окне редактора кода написать следующий код решения задачи:
private void button1_Click(object sender, EventArgs e)
{
double usd=0; double k=0; double rub=0;
usd = Convert.ToDouble(textBox1.Text);//считываем значение из textBox1
k = Convert.ToDouble(textBox2.Text);//считываем значение из textBox2
rub = usd * k;
label3.Visible = true;//делаем label3 видимым label3.Text = "Cумма составляет " + rub.ToString() + " руб.";//выводим результат в label3
}
14. Модифицировать форму как показано на рисунке 9:
6

Рис.9. Окно программы
15. Отладить программу нажав на кнопку . Если все сделано правильно, то появится форма как показано на рисунке 9, если нет – то сообщения об ошибках.
Задание №2. Задана квадратная матрица А размером N * N (N<=10),
состоящая из действительных элементов. Необходимо найти среднее арифметическое значение элементов каждого из столбцов этой матрицы и дополнить написанную ранее программу следующими компонентами: numericUpDown, richTextBox, dataGridView, MenuStrip и форму AboutBox.
1.Продолжаем модифицировать программу. Добавим новую закладку,
этого нужно сделать следующие действия:
открыть окно настройки свойства TabPages компонента tabControl1;
добавим вкладку tabPage2;
для вкладки tabPage2 изменить свойство Text на Задача 2. 2. Разместить на новой вкладки следующие компоненты:
надписи Label5, Label6, Label7;
регулятор числовых значений numericUpDown1;
поле форматированного текста richTextBox1;
кнопку button2;
таблицу dataGridView1.
7

3.Настроить вид компонента dataGridView1, для этого нужно сделать следующие действия:
установить размер в свойстве Size 457;247;
указываем ширину первого столбца в свойстве RowHeadersWidth ставим значение 50;
удалить дополнительную нижнюю строку в свойстве
AllowUserToAddRows выбрав false.
4.Настроить вид компонента numericUpDown1 согласно требованиям за-
дачи, для этого нужно сделать следующие действия:
установить минимальное значение 3 в свойстве Minimum;
установить минимальное значение 10 в свойстве Maximum. 5. Модифицировать форму как показано на рисунке 10:
Рис.10. Окно программы
8
6.Создать событие для прорисовки таблицы при загрузке формы, для этого нужно сделать следующие действия:
в окне событий создать событие Form1_Load;
в открывшемся окне редактора ввести следующий:
private void Form1_Load(object sender, EventArgs e)
{
int n=10;
for (int i = 0; i < n; i++)
{
dataGridView1.Columns.Add("Column" + Convert.ToString(i), Convert.ToString(i + 1));//создаем и нумеруем столбец
dataGridView1.Columns[i].Width = 40;//указываем ширину столбца
dataGridView1.Rows.Add();//добавляем строку dataGridView1.Rows[i].HeaderCell.Value =
Convert.ToString(i + 1);//нумеруем строку
}
}
7. Создать событие для подсчета результатов:
в окне событий создать событие button2_Click;
в открывшемся окне редактора ввести следующий код:
private void button2_Click(object sender, EventArgs e)
{
double[,] a = new double[10, 10];//объявляем массив richTextBox1.Clear();//очищаем поле вывода
try //обработка исключений
{
//считываем с экрана массив
for (int i = 0; i < numericUpDown1.Value; i++)
for (int j = 0; j < numericUpDown1.Value; j++) a[i, j] =
Convert.ToDouble(dataGridView1.Rows[j].Cells[i].Value.T oString());
//считываем среднее арифметическое double s = 0;
for (int i = 0; i < numericUpDown1.Value; i++)
{
s = 0;
for (int j = 0; j < numericUpDown1.Value; j++) {s = s + a[i, j]; }
s = s / Convert.ToDouble(numericUpDown1.Value); richTextBox1.Text += "Cреднее арифметическое " + (i + 1) + " столбца = " + s + "\n";
}
9

}
catch (System.Exception g)//обработка пойманного исключения
{
MessageBox.Show(g.Message + "\n(Ошибка вводимых параметров!)", "Ошибка!", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
8. Создать меню для удобной навигации по программе:
добавить элемент управления MenuStrip;
заполнить его, как показано на рисунке 11:
Рис.11. Меню Файл и Справка
создать событие для обработки действий при выборе меню Файл→Очистить, для этого нужно создать событие очистить ToolStripMenuItem_Click и записать в нем следующий код:
private void очиститьToolStripMenuItem_Click(object sender, EventArgs e)
{
richTextBox1.Clear();//очищаем поле вывода dataGridView1.Rows.Clear(); label3.Visible = false;
int n = 10;
for (int i = 0; i < n; i++)
{
dataGridView1.Rows.Add();//добавляем строку dataGridView1.Rows[i].HeaderCell.Value = Convert.ToString(i + 1);//нумеруем строку
}
textBox1.Clear();
textBox2.Clear();
numericUpDown1.Value = numericUpDown1.Minimum;
}
создать событие для обработки действий при выборе меню Файл→Посчитать→Задача 1, для этого нужно в окне Событий в событии
Click указать событие кнопки ОК button1_Click;
1

аналогично создать обработку события для меню Файл→Посчитать
→Задача 2;
создать событие для обработки действий при выборе меню Файл→Выход, для этого нужно создать событие выходToolStripMenuItem_Click и записать в нем следующий код:
private void выходToolStripMenuItem_Click(object sender, EventArgs e)
{
Close();
}
9. Создать форму для представления информации о разработчиках:
в обозревателе решений нажать правой кнопкой мыши на имя проекта и появившемся меню выбрать Добавить→Форма Windows;
Рис.12. Создание формы
в появившемся окне выбрать Окно «О программе», в режиме конструктора откроется новая форма;
заполнить форму как показано на рисунке 13 (чтобы не было наложение в коде программы нужно поставить комментарии на изменение
10