КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Динамическое создание объектов
Классы и объекты Порядок выполнения задания Задание: Вычислить и вывести на экран таблицу значений функции y=a·ln(x) при x, изменяющемся от x0 до xk с шагом dx, a – константа. Панель диалога представлена на рис 4.4.
Рис. 4.4. Окно программы для табулирования функции.
Текст обработчика нажатия кнопки Вычислить приведен ниже.
private void button1_Click(object sender, EventArgs e) { // Считывание начальных данных double x0 = Convert.ToDouble(textBox1.Text); double xk = Convert.ToDouble(textBox2.Text); double dx = Convert.ToDouble(textBox3.Text); double a = Convert.ToDouble(textBox4.Text); textBox5.Text = "Работу выполнил ст. Иванов М.А." + Environment.NewLine; // Цикл для табулирования функции double x = x0; while (x <= (xk + dx / 2)) { double y = a * Math.Log(x); textBox5.Text += "x=" + Convert.ToString(x) + "; y=" + Convert.ToString(y) + Environment.NewLine; x = x + dx; } }
После отладки программы следует проверить правильность работы программы с помощью контрольного примера, приведенного на рис. 4.4. Установите точку останова на оператор перед циклом и запустите программу. После попадания на точку остановки, выполните пошагово программу и проследите, как меняются все переменные в процессе выполнения. Индивидуальные задания Составьте программу табулирования функции y(x), выведите на экран значения x и y(x). Нужный вариант задания выберите из нижеприведенного списка по указанию преподавателя. Откорректируйте элементы управления в форме в соответствии со своим вариантом задания.
Лабораторная работа №5 Цель лабораторной работы: изучить основные понятия, относящиеся к классам и объектам, освоить динамическое создание объектов в программном коде. В объектно-ориентированном подходе существуют понятия класс и объект. Класс – это программная единица, которая задаёт общий шаблон для конкретных объектов. Класс содержит все необходимые описания переменных, свойств и методов, которые относятся к объекту. Примером класса в реальной жизни является понятие «автомобиль»: как правило, автомобиль содержит некоторое количество колёс, дверей, имеет какой-то цвет, но эти конкретные детали в классе не описываются. Объект – это экземпляр класса. Свойства объекта содержат конкретные данные, характерные для данного экземпляра. В реальной жизни примером объекта будет конкретный экземпляр автомобиля с 4 колёсами, 5 дверками и синего цвета. Чаще всего для размещения на форме кнопки, поля ввода или других управляющих элементов используется дизайнер среды Visual Studio: нужный элемент выделяется в панели элементов и размещается на форме. Однако иногда создавать элементы нужно уже в процессе выполнения программы. Поскольку каждый элемент управления представляет собой отдельный класс, его помещение на форму программным способом включает несколько шагов: · Создание экземпляра класса · Привязка его к форме · Настройка местоположения, размеров, текста и т. п. Например, чтобы создать кнопку, нужно выполнить следующий код (его следует разместить в обработчике сообщения Load или в каком-либо другом методе):
Button b = new Button();
Здесь объявляется переменная b, относящаяся к классу Button, как и в предыдущих лабораторных работах. Однако дальше идёт нечто новое: с помощью оператора new создаётся экземпляр класса Button и ссылка на него присваивается переменной b. При этом выполняется целый ряд дополнительных действий: выделяется память под объект, инициализируются все свойства и переменные. Далее нужно добавить объект на форму. Для этого служит свойство Parent, которое определяет родительский элемент, на котором будет размещена кнопка:
b.Parent = this;
Ключевое слово this относится к тому объекту, в котором размещён выполняемый в данный момент метод. Поскольку все методы в лабораторных работах размещаются в классе формы, то и this относится к этому конкретному экземпляру формы. Вместо формы кнопку можно поместить на другой контейнер. Например, если на форме есть элемент управления Panel, то можно поместить кнопку на него следующим образом:
b.Parent = panel1;
Чтобы задать положение и размеры кнопки нужно использовать свойства Location и Size:
b.Location = new Point(10, 20); b.Size = new Size(200, 100);
Обратите внимание, что Location и Size – это тоже объекты. Хотя внутри у Location содержатся координаты x и y, задающие левый верхний угол объекта, не получится поменять одну из координат, нужно менять целиком весь объект Location. То же самое относится и к свойству Size. На самом деле, каждый раз, когда на форму помещается новый элемент управления или вносятся какие-то изменения в свойства элементов управления, Visual Studio генерирует специальный служебный код, который проделывает приведённые выше операции по созданию и настройке элементов управления. Попробуйте поместить на форму кнопку, изменить у неё какие-нибудь свойства, а затем найдите в обозревателе решений ветку формы Form1, разверните её и сделайте двойной щелчок по ветке Form1.Designer.cs. Откроется файл с текстом программы на языке C#, которую среда создала автоматически. Менять этот код вручную крайне не рекомендуется! Однако можно его изучить, чтобы понять принципы создания элементов управления в ходе выполнения программы.
Дата добавления: 2014-11-07; Просмотров: 979; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |