Главная страница
Навигация по странице:

  • Расчётно-Графическая работа по дисциплине «Язык программирования C » на тему: «Создание приложения

  • Создание приложения Windows Forms, написание приложения, отображающего флаги по выбранной из списка стране. Лицов Р.А. ИС-29. Создание приложения Windows Forms, написание приложения, отображающего флаги по выбранной из списка стране.


    Скачать 213.61 Kb.
    НазваниеСоздание приложения Windows Forms, написание приложения, отображающего флаги по выбранной из списка стране.
    АнкорСоздание приложения Windows Forms, написание приложения, отображающего флаги по выбранной из списка стране
    Дата19.05.2022
    Размер213.61 Kb.
    Формат файлаdocx
    Имя файлаЛицов Р.А. ИС-29.docx
    ТипДокументы
    #539380


    МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

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

    «Нижегородский государственный архитектурно-строительный университет»

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

    Расчётно-Графическая работа по дисциплине

    «Язык программирования C#» на тему:

    «Создание приложения WindowsForms, написание приложения, отображающего флаги по выбранной из списка стране.»

    Выполнил студент гр. ИС-29: Лицов Р.А.

    Проверил доцент, канд. техн.наук: Кислицын Д. И.

    Нижний Новгород

    2022 г.

    Содержание


    Задание 3

    Блок-схема 4

    Программный код 5

    Пример работы приложения 7

    Список использованной литературы 10


    Задание



    Напишите приложение, которое по выбранной из списка стране отображает флаг этой страны. Флаг должен быть нарисован средствами класса System.Drawing.Graphics. Приложение должно уметь рисовать флаги России, Франции, Германии, Великобритании, Японии, Китая.

    Блок-схема




    Программныйкод


    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 flags

    {

    public partial class Form1 : Form

    {

    public Form1()

    {

    InitializeComponent();

    }
    Graphics g;
    private void Form1_Load(object sender, EventArgs e)

    {
    }

    private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)

    {

    }
    private static void DrawStar(Graphics g, int size, int posX, int posY, double angle)

    {

    double R = size, r = size * 2.5, x0 = posX, y0 = posY;

    PointF[] points = new PointF[11];

    double a = angle, da = Math.PI / 5, l;

    for (int k = 0; k <= 10; k++)

    {

    l = k % 2 == 0 ? r : R;

    points[k] = new PointF((float)(x0 + l * Math.Cos(a)), (float)(y0 + l * Math.Sin(a)));

    a += da;

    }

    g.FillPolygon(Brushes.Yellow, points);

    }

    private void button1_Click(object sender, EventArgs e)

    {

    //Россия

    if (comboBox1.SelectedIndex == 0)

    {

    g = CreateGraphics();

    g.Clear(Color.LightGray);

    g.FillRectangle(Brushes.White, 0, 0, 400, 100);

    g.FillRectangle(Brushes.Blue, 0, 100, 400, 100);

    g.FillRectangle(Brushes.Red, 0, 200, 400, 100);

    }
    //Франция

    if (comboBox1.SelectedIndex == 1)

    {

    g = CreateGraphics();

    g.Clear(Color.LightGray);

    g.FillRectangle(Brushes.Blue, 0, 0, 133, 300);

    g.FillRectangle(Brushes.White, 133, 0, 133, 300);

    g.FillRectangle(Brushes.Red, 266, 0, 133, 300);

    }
    //Германия

    if (comboBox1.SelectedIndex == 2)

    {

    g = CreateGraphics();

    g.Clear(Color.LightGray);

    g.FillRectangle(Brushes.Black, 0, 0, 400, 100);

    g.FillRectangle(Brushes.Red, 0, 100, 400, 100);

    g.FillRectangle(Brushes.Yellow, 0, 200, 400, 100);

    }
    //Великобритания

    if (comboBox1.SelectedIndex == 3)

    {

    g = CreateGraphics();

    g.Clear(Color.LightGray);

    g.FillRectangle(Brushes.Navy, 0, 0, 400, 300);
    //Белые линии диагонали

    g.DrawLine(new Pen(Color.White, 300 / 8f), 0, 0, 400, 300);

    g.DrawLine(new Pen(Color.White, 300 / 8f), 0, 300, 400, 0);
    //Красные линии диагонали

    g.DrawLine(new Pen(Color.Red, 300 / 16f), 0, 0, 400, 300);

    g.DrawLine(new Pen(Color.Red, 300 / 16f), 0, 300, 400, 0);
    //Белые линии креста

    g.DrawLine(new Pen(Color.White, 400 / 8f), 400 / 2, 0, 400 / 2, 300);

    g.DrawLine(new Pen(Color.White, 400 / 8f), 0, 300 / 2, 400, 300 / 2);
    //Красные линии креста

    g.DrawLine(new Pen(Color.Red, 400 / 12f), 400 / 2, 0, 400 / 2, 300);

    g.DrawLine(new Pen(Color.Red, 400 / 12f), 0, 300 / 2, 400, 300 / 2);

    }
    //Япония

    if (comboBox1.SelectedIndex == 4)

    {

    g = CreateGraphics();

    g.Clear(Color.LightGray);

    g.FillRectangle(Brushes.White, 0, 0, 400, 300);

    g.FillEllipse(Brushes.Red, 120, 75, 150, 150);

    }
    //Китай

    if (comboBox1.SelectedIndex == 5)

    {

    g = CreateGraphics();

    g.Clear(Color.LightGray);

    g.FillRectangle(Brushes.Red, 0, 0, 400, 300);

    DrawStar(g, 15, 60, 60, 0.91);

    DrawStar(g, 4, 125, 25, 0);

    DrawStar(g, 4, 140, 45, 0.12);

    DrawStar(g, 4, 140, 75, 0.24);

    DrawStar(g, 4, 125, 95, 0.36);


    }

    }

    }

    }

    Пример работы приложения














    Список использованной литературы


    1. Microsoft Docs. – URL: https://docs.microsoft.com/ru-ru/dotnet/api/system.drawing.graphics?view=dotnet-plat-ext-6.0





    написать администратору сайта