697

Использование графики в приложениях Windows Forms

Лабораторная работа

Информатика, кибернетика и программирование

Разработать приложение с графическим интерфейсом пользователя, которое позволяет рисовать заданную геометрическую фигуру в клиентской области главного окна, строит и отображает график заданной функции

Русский

2013-01-06

108 KB

30 чел.

МИНИСТЕРСТВО НАУКИ И ОБРАЗОВАНИЯ УКРАИНЫ

ХАРЬКОВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

Кафедра информационных систем

Отчёт

по лабораторной работе №4

по курсу: «Объектно-ориентированное программирование»

по теме: «Использование графики в приложениях Windows Forms»

Выполнил:

студент 2 курса 5 группы

факультета ЭИ

Нгуен Вьет Дык

Проверил:
доцент кафедры ИС

Лосев М.Ю.

2012

Содержание

Условие задания---------------------------------------------------------------------------3

UML- Диаграмма--------------------------------------------------------------------------3

Задача

Исходный код программы --------------------------------------------------------------3

Примеры результатов работы программы на тестовых исходных данных----7

Вывод----------------------------------------------------------------------------------------7


Условие задания.

Варіант 14

Задание 1.

Разработать приложение с графическим интерфейсом пользователя, которое позволяет рисовать заданную геометрическую фигуру в клиентской области главного окна.

Сектор. Одинарный клик правой кнопкой мыши.

Задание 2.

Разработать приложение с графическим интерфейсом пользователя, которое строит и отображает график заданной функции.

Ctg(x), где х = от 0 до 180.

UML – Диаграмма

Исходный код программы

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Collections;

using System.Drawing.Drawing2D;

namespace lr4

{

   public partial class MY_LR : Form

   {

     

       Dictionary<double, double> f1 = new Dictionary<double, double>();

       ArrayList points = new ArrayList();

       

       Pen pen = new Pen(Brushes.Red);

       double xmax = 180, x0 = 0;

       SolidBrush peen = new SolidBrush(Color.Green);

     

       public MY_LR()

       {

           InitializeComponent();

           

           for (double x = x0; x <= xmax; x += 1)

               f1.Add(x, (System.Math.Atan(x)));

           chart1.Series[0].Points.DataBindXY(f1.Keys, f1.Values);

           chart1.Series[0].LegendText = "функция ctg(x)";

       }

     

       private void Form1_Paint(object sender, PaintEventArgs e)

       {

           Graphics g = e.Graphics;

           pen.Width = 3;

         

           float startAngle = 0.0F;

           float sweepAngle = 275.0F;

           foreach (Point p in points) {

               

               Rectangle rect = new Rectangle(p.X, p.Y, 100, 50);

               e.Graphics.DrawPie(pen, rect, startAngle, sweepAngle);

               e.Graphics.FillPie(peen, rect, startAngle, sweepAngle);

       }

       }

       

       private void t1_Click(object sender, EventArgs e)

       {

           chart1.Visible = false;

           domainUpDown1.Visible = true;

           

           label1.Visible = true;

           label2.Visible = true;

           button2.Visible = true;

           panel1.Visible = false;

       }

     

       private void t2_Click(object sender, EventArgs e)

       {

           chart1.Visible = true;

           domainUpDown1.Visible = false;

           

           label1.Visible = false;

           label2.Visible = false;

           button2.Visible = false;

           panel1.Visible = true;

       }

    

       private void button1_Click_1(object sender, EventArgs e)

       {

           f1.Clear();

           x0 = Convert.ToDouble(numericUpDown1.Text);

           xmax = Convert.ToDouble(numericUpDown2.Text);

           if (x0 > xmax) { MessageBox.Show("Zadayte pravil'no interval", "!", MessageBoxButtons.OK); return; }

           for (double x = x0; x <= xmax; x += 1)

               f1.Add(x, ((System.Math.Atan(x))));

           chart1.Series[0].Points.DataBindXY(f1.Keys, f1.Values);

           chart1.Series[0].LegendText = "функция ctg(x)";

           if (comboBox2.Text == "Золотой")

           {

               chart1.Series[0].Color = Color.Gold;

           }

           if (comboBox2.Text == "Зеленый")

           {

               chart1.Series[0].Color = Color.Green;

           }

           if (comboBox2.Text == "Синий")

           {

               chart1.Series[0].Color = Color.Blue;

           }

           chart1.Series[0].BorderWidth = Convert.ToInt32(numericUpDown3.Value);

       }

       private void MY_LR_MouseClick(object sender, MouseEventArgs e)

       {

           if (e.Button == MouseButtons.Right)

           {

               Point p = new Point();

               p.X = e.X - 51;

               p.Y = e.Y - 23;

               points.Add(p);

           }

           Invalidate();

       }

       private void Z(object sender, EventArgs e)

       {

           if (domainUpDown1.Text == "Красный")

               pen.Color = Color.Red;

           if (domainUpDown1.Text == "Синий")

               pen.Color = Color.Blue;

           if (domainUpDown1.Text == "Черный")

               pen.Color = Color.Black;

           if (domainUpDown1.Text == "Серый")

               pen.Color = Color.Gray;

           if (domainUpDown1.Text == "Желтый")

               pen.Color = Color.Yellow;

       }

       private void button2_Click(object sender, EventArgs e)

       {  

           if (colorDialog1.ShowDialog() == DialogResult.OK)

           {              

               peen.Color = colorDialog1.Color;               

           }

       }

      

       }

           }

                

       

Результаты работы программы

Вывод: В ходе данной лабораторной работы усовершенствовал практические навыки разработки интерфейса пользователя с помощью WindowsForms, приобрела практические навыки использования библиотечных классов для работы с графикой, усовершенствовала навыки работы с интегрированной средой MS Visual Studio.


 

А также другие работы, которые могут Вас заинтересовать

76481. Брачный договор: понятие, форма, стороны 15.48 KB
  Брачный договор соглашение лиц вступающих в брак или соглашение супругов определяющее имущественные права и обязанности супругов в браке и или в случае его расторжения ст. По правовой природе брачный договор гражданскоправовой договор имеет особенности касающиеся субъектного состава предмета времени заключения и содержания договора; к нему могут применяться общие положения ГК о договорах; изменение расторжение и признание брачного договора недействительным происходят по основаниям и в порядке установленными нормами...
76482. Содержание брачного договора 15.8 KB
  Так брачным договором супруги вправе изменить установленный законом режим совместной собственности установить режим совместной долевой или раздельной собственности на все имущество супругов на его отдельные виды или на имущество каждого из супругов. Брачный договор может быть заключен как в отношении имеющегося так и в отношении будущего имущества супругов. Так условия брачного договора могут содержать: права и обязанности по взаимному содержанию; способы участия в доходах друг друга; порядок несения каждым из них семейных расходов;...
76483. Прекращение и изменение брачного договора 15.33 KB
  Соглашение об изменении или о расторжении брачного договора совершается в той же форме что и сам брачный договор т. Односторонний отказ от исполнения брачного договора не допускается. Может возникнуть ситуация когда супруги не пришли к обоюдному соглашению о расторжении брачного договора.
76484. Признание брачного договора недействительным 18.76 KB
  Брачный договор может быть признан судом недействительным в случае: признания брака недействительным; если условия договора ставят одного из супругов в крайне неблагоприятное положение; по основаниям предусмотренным ст. На признание брачного договора действительным или недействительным распространяются соответствующие нормы ГК РФ о действительности и недействительности сделок. Брачный договор может быть признан недействительным по иску супруга чьи права и законные интересы были нарушены в результате заключения договора: в состоянии...
76485. Обращение взыскание на имущество супругов. Гарантии прав кредиторов при заключении брачного договора 18.08 KB
  Таким имуществом в частности являются движимые и недвижимые вещи ценные бумаги паи доли в капитале внесенные в кредитные или иные коммерческие организации и любое другое нажитое в период брака имущество независимо от того на имя кого из супругов оно приобретено. 256 ГК РФ по обязательствам одного из супругов взыскание может быть обращено на его долю в общем имуществе супругов которая причиталась бы этому супругу при разделе имущества. 39 СК РФ доли супругов при разделе общего имущества признаются равными если иное не предусмотрено...
76486. Основания, порождающие родительские правоотношения 15.58 KB
  Законом предусмотрена государственная регистрация рождения ребенка в органах записи актов гражданского состояния по месту рождения ребенка или по месту жительства его родителей одного из них. Происхождение ребенка от матери устанавливается не медицинским учреждением а органом записи актов гражданского состояния на основании справки или иного документа выдаваемого тем медицинским учреждением в стенах которого родился ребенок. Государственная регистрация рождения ребенка производится по месту жительства родителей или одного из них. Сведения...
76487. Установление происхождения ребенка, родившегося в браке 14.71 KB
  Лишь после регистрации рождения происхождение ребенка становится юридическим фактом и может порождать правовые последствия. Состояние матери ребенка в зарегистрированном браке дает основание полагать что отцом ребенка является супруг матери. При государственной регистрации рождения ребенка предъявляется документ являющийся основанием для внесения сведений об отце в запись акта о регистрации рождения.
76488. Регистрация рождения ребенка, рожденного вне брака 14.59 KB
  Таким образом с формальноюридической точки зрения совместная жизнь в зарегистрированном браке и в гражданском браке две большие разницы. Что же касается темы отцы и дети то здесь закон преследуя интересы несовершеннолетних устанавливает принцип равенства прав детей рожденных в браке и вне брака. Статья 53 СК РФ определяет что дети родившиеся у лиц не состоящих между собой в браке имеют по отношению к своим родителям и их родственникам такие же права и обязанности как и дети рожденные в браке.
76489. Установление отцовства и факта признания отцовства 17.18 KB
  Если же предполагаемый отец умер то речь идет уже об установлении факта отцовства или факта признания отцовства. Если при рассмотрении заявления в суде будет установлено что лицо при жизни признавало своё отцовство материнство в отношении ребенка то суд удовлетворяет заявление и признает факт отцовства или факт признания отцовства. Порядок судебного установления отцовства При наличии какого-либо спора установление отцовства осуществляется в судебном порядке по иску заинтересованного лица.