Программы на С#

Автор: Пользователь скрыл имя, 02 Апреля 2012 в 11:14, лабораторная работа

Краткое описание

4 лабораторные работы: программы на языке C#

Оглавление

Лабораторная работа №1. Разработка элементарных программ на языке программирования C#. Написать C# программу, реализующую вычисления согласно варианту задания. Исходные данные вводятся с клавиатуры (на форме приложения).
Лабораторная работа №2. Реализовать простое оконное приложение согласно варианту. Для создания приложения воспользуйтесь встроенными мастерами среды разработки, с помощью которого создайте каркас простейшего приложения, содержащего одну форму. На форме должно быть основное меню с возможностью открытия одного файла, который потом будет отображен на самой форме.
Лабораторная работа №3. Работа с графикой GDI. Спрайты. Реализовать приложение, в котором на фоне статичной картинки перемещаются анимированные спрайты, согласно варианту.
Лабораторная работа №4. Создание собственных компонентов. Изучить принципы разработки компонент. Реализовать компонент согласно варианту, и построить приложение использующее данный компонент.

Файлы: 4 файла

отчет лабы 1.doc

— 245.50 Кб (Открыть, Скачать)

отчет лабы 2.doc

— 374.00 Кб (Открыть, Скачать)

отчет лабы 3.doc

— 157.00 Кб (Открыть, Скачать)

отчет лабы 4.doc

— 60.50 Кб (Скачать)


Федеральное агентство по образованию

Государственное образовательное учреждение высшего

профессионального образования

«Хакасский государственный университет им. Н.Ф. Катанова»

Институт информатики и телематики

Кафедра Информационных технологий и систем

 

 

 

 

 

 

 

 

 

 

 

Отчет

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

 

 

 

 

 

 

 

 

 

 

Выполнил:

Студентка группы 3-48

Гольцова М.Л.

 

Проверил:

Клещ А.В.

 

 

 

 

 

 

 

 

 

 

 

 

Абакан, 2012 г.

Создание собственных компонентов. Изучить принципы разработки компонент. Реализовать компонент согласно варианту, и построить приложение использующее данный компонент.

Треугольная кнопка.

 

Создаем форму

 

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;

 

namespace лаба_4

{

    public partial class Form1 : Form

    {

        public Form1()

        {

            InitializeComponent();

        }

 

        private void Form1_Load(object sender, EventArgs e)

        {

            knopka btn = new knopka();

            btn.Parent = this;

            btn.Left = 50;

            btn.Top = 50;

            btn.Width = 100;

            btn.Height = 100;

        }

    }

}

 

Создаем класс

 

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Drawing.Drawing2D;

using System.Linq;

using System.Text;

using System.Windows.Forms;

 

 

namespace лаба_4

{

    class knopka:Button

    {

        public knopka()

        {

            //Конструктор будет пустой

        }

        protected override void OnResize(EventArgs pevent)

        {

            // Вертикальный треугольник

            Point[] myTriAngel =

            {

                new Point(50, 0),

                new Point(100, 100),

                new Point(0, 100)

               

            };

            base.OnResize(pevent);

            GraphicsPath path = new GraphicsPath();

            path.AddPolygon(myTriAngel);

            Region = new Region(path);

        }

        protected override void OnPaint(PaintEventArgs pevent)

        {

            base.OnPaint(pevent);

 

            Graphics graphics = pevent.Graphics;

            Rectangle rect = ClientRectangle;

 

            // Вертикальный треугольник

            Point[] myTriAngel =

            {

                new Point(50, 0),

                new Point(100, 100),

                new Point(0, 100)

               

            };           

           

            // Создаем градиент 1

            PathGradientBrush pthGrBrush1 = new PathGradientBrush(myTriAngel);

 

            // Цвет для обычного состояния

            Color[] colors1 =

            {

                Color.FromArgb(255, 0, 128, 0),    // Темнозеленый

                Color.FromArgb(255, 0, 255, 255),  // Голубой

                Color.FromArgb(255, 0, 0, 255)     // Синий

            };  

 

            // Переходы

            float[] relativePositions =

            {

                0f,       // Темнозеленый по краю треугольника.

                0.4f,     // Светлоголубой 40 процентов всего пути до центра

                1.0f      // Синий

            };

 

            ColorBlend colorBlend1 = new ColorBlend();

            colorBlend1.Colors = colors1;

            colorBlend1.Positions = relativePositions;

            pthGrBrush1.InterpolationColors = colorBlend1;

 

            // Создаем градиент для нажатого состояния

            PathGradientBrush pthGrBrush2 = new PathGradientBrush(myTriAngel);

 

            // Цвет для нажатого состояния

            Color[] colors2 =

            {

                Color.FromArgb(255, 0, 0, 255),    // Синий

                Color.FromArgb(255, 0, 255, 255),  // Голубой

                Color.FromArgb(255, 0, 128, 0)     // Темнозеленый

            }; 

 

            ColorBlend colorBlend2 = new ColorBlend();

            colorBlend2.Colors = colors2;

            colorBlend2.Positions = relativePositions;

            pthGrBrush2.InterpolationColors = colorBlend2;

 

            bool bPressed = false;

 

            if (MouseButtons == MouseButtons.Left)

                bPressed = true;

 

            if (bPressed)

                graphics.FillRectangle(pthGrBrush1, 0, 0, 200, 200);

            else

                graphics.FillRectangle(pthGrBrush2, 0, 0, 200, 200);

        }

 

    }

}

 

 

 

 

 

 

 

3

 



Информация о работе Программы на С#