Добавить материал и получить бесплатное свидетельство о публикации в СМИ
Эл. №ФС77-60625 от 20.01.2015
Инфоурок / Информатика / Другие методич. материалы / Курсовая работа Графические возможности VB

Курсовая работа Графические возможности VB


  • Информатика

Поделитесь материалом с коллегами:

hello_html_m529adf11.gifhello_html_6745573a.gifМИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ

ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО

ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «МОРДОВСКИЙ

ГОСУДАРСТВЕННЫЙ ПЕДАГОГИЧЕСКИЙ ИНСТИТУТ

ИМЕНИ М. Е. ЕВСЕВЬЕВА»



Факультет физико-математический


Кафедра информатики и вычислительной техники


КУРСОВАЯ РАБОТА


ГРАФИЧЕСКИЕ ВОЗМОЖНОСТИ MICROSOFT VISUAL BASIC





Автор курсовой работы: Ю.А. Шаповалов, студент III курса группы МДФ-112 очной формы обучения

дата, подпись

050100.62 Педагогическое образование. Профиль Физика. Информатика.

Руководитель: О. Н. Шалина, канд. пед. наук , доцент

дата, подпись











Саранск 2014

Содержание







Введение

Microsoft Visual Basic – современное средство разработки программного обеспечения, разрабатываемое корпорацией Microsoft. Оно включает язык программирования и среду разработки. Язык Visual Basic унаследовал отчасти синтаксис своего предка – языка Бейсик, у которого есть немало диалектов. В то же время Visual Basic сочетает в себе процедуры и элементы объектно-ориентированных и компонентно-ориентированных языков программирования. Среда разработки Microsoft Visual Basic включает инструменты для визуального конструирования пользовательского интерфейса.

Microsoft Visual Basic является мощным средством разработки прототипов программ, разнообразных Windows-приложений баз данных, программ, работающих под управлением операционных систем семейства Microsoft Windows и др.

Достаточно часто при проведении конструкторских расчетов, в экономических, научных исследованиях встречается задача по решению систем линейных алгебраических уравнений. В связи с этим распространено использование различных программных средств, связанных с решением систем линейных уравнений средствами Microsoft Visual Basic. Исходя из вышеизложенного, целью данной курсовой работы является выявление основных графических возможностей Microsoft Visual Basic.

Объект исследования – инструментальная среда Microsoft Visual Basic.

Предмет исследования – основные графические возможности Microsoft Visual Basic.

Поставленная цель предполагает решение следующих задач:

  1. Раскрыть основы объектно-ориентированного программирования.

  2. Рассмотреть интегрированную среду разработки Microsoft Visual Basic.

  3. Раскрыть возможности Microsoft Visual Basic.

  4. Охарактеризовать основные элементы управления.

  5. Рассмотреть методы рисования с помощью графических объектов в Microsoft Visual Basic.

  6. Раскрыть особенности построения линии и закрашенного прямоугольника в Microsoft Visual Basic.

  7. Раскрыть особенности построения дуги и закрашенного эллипса в Microsoft Visual Basic.

  8. Разработать приложение, реализующее построение закрашенных фигур в Microsoft Visual Basic.

Курсовая работа состоит из введения, двух глав, заключения, списка использованных источников.





1 Объектно-ориентированное программирование. Интегрированная среда разработки Microsoft Visual Basic

1.1 Объектно-ориентированное программирование

Объектно-ориентированное программирование – это методология программирования, основанная на представлении программы в виде совокупности объектов, каждый из которых является экземпляром определенного класса; а классы образуют иерархию наследования. Объектно-ориентированное программирование использует в качестве базовых элементов объекты, а не алгоритмы [5].

Основное достоинство объектно-ориентированного программирования – сокращение числа межмодульных связей, изменение объемов информации, которая передается между модулями и возможность повторного использования кодов. Приведем основные концепции объектно-ориентированное программирование.

Инкапсуляция – ограничение прав доступа. Объекты в задаче сохраняют конкретные данные, тип которых определяется полями класса. Каждый объект в задаче играет роль, определяет его поведение. То, что может делать каждый объект (кроме сохранения значений своих полей) задается элементами функции. Особенностью класса является инкапсуляция одной конструкции, как данных, так и методов функций, которые обрабатывают эти данные, контролируемым образом. Это защита данных и операций от неконтролируемого доступа.

Так элементы private оказываются автоматически доступными только для методов самого класса, но сокрытыми для другой части программы.

Элементы public определяют интерфейс класса с другими частями программы и другими классами.

Наследование. Объекты могут получать свойства и методы других объектов (предков). Класс-предок называется базовым, класс-потомок – производным. Наследники получают все свойства и методы предков, которые могут быть изменены, а также могут обладать собственными методами или свойствами. Наследование реализуется с помощью ключевого слова Inherits. У каждого класса может быть только один родитель (базовый класс или суперкласс). Нельзя унаследовать свойства двух различных классов, но у каждого базового класса может быть свой базовый класс [7].

Полиморфизм. Методы различных объектов могут иметь одинаковые имена, но отличаться по своему содержанию. Полиморфизм – это положение теории типов, согласно которому имена (переменных) могут обозначать объекты разных, но имеющих общего родителя, классов. Следовательно, любой объект, обозначаемый полиморфным именем, может по-своему реагировать на некий общий набор операций. Один интерфейс – много методов. Может понадобиться программа, которой требуется три типа СТЭКОВ (для хранения целых, вещественных чисел, для хранения символов). Алгоритм, который реализует все стэки, будет один и тот же, хотя хранимые даны различны.

Полиморфизм позволяет определить общий для всех типов данных набор стэковых функций, использовать одно и то же имя. Дальнейшая забота компилятора выбрать специфический метод для использования в каждой конкретной ситуации [10].

Полиморфизм организуется при помощи двух ключевых слов – Overridable и Overrides. Overridable используется на уровне базового класса, чтобы указать, что данная функция может переопределяться в производных классах. Overrides используется на уровне производного класса, чтобы указать, что данная функция переопределяет соответствующую функцию базового класса.

Абстракция. Моделирование объектов в программе. Свойства и методы.

Абстрагирование – это метод решения сложных задач. Описывая поведение сложного объекта, мы выделяем только те стороны, которые нас интересуют с точки зрения решаемых задач.

Характеристики – это свойства объекта, т.е. то, что, касается его состояния или определяет его поведение, выделяется в единую программную единицу или некий абстрактный класс. Объектно-ориентированное проектирование основано на абстрактном объединении объектов, решении одних и тех же задач, в классы. В виде класса можно представить любую общепринятую абстракцию данных.

Абстрагирование и инкапсуляция дополняют друг друга. Абстрагирование направлено на наблюдение за объектом, а инкапсуляция занимается внутренним устройством объекта – это сокрытие некоторых элементов абстракции (которые не затрагивают существенных характеристик объекта как целого) [2].

Наследование классов – это основа объектно-ориентированное программирования, позволяет увеличить масштабируемость программ, реализовать повторное использование кода. Программа, которая использует объекты базового класса, может быть расширена без изменения старого кода путем построения производных классов от базового. Использование новых объектов в производных классах [16]. Это достигается соглашением о наследовании: объекты производного класса содержат все элементы базового класса (поля и методы), как если бы эти элементы были описаны в самом производном классе.

В Microsoft Visual Basic программа состоит из объектов, взаимодействующих друг с другом. Объекты создаются по шаблонам, называемым классами. Сами объекты называются экземплярами классов. Классы можно программировать на любом языке.

Класс – это пользовательский тип, обладающий расширенными возможностями. Объект – это переменная пользовательского типа. Классы содержат в себе процедуры и функции, которые применимы к переменным данного класса. Эти процедуры и функции называются методами.

Список состава класса свойства и методы нового класса Class

Уровень_доступа:

  • Public – полный доступ к классу.

  • Private – класс не виден за пределами модуля, в котором он был объявлен.

  • Protected – класс доступен внутри модуля, в котором он объявлен, и внутри модулей, где присутствуют классы-потомки.

  • Friend – доступ к классу только в пределах программы, в которой он объявлен (по умолчанию).

  • ProtectedFriend – класс доступен в пределах программы, в которой он объявлен, и внутри других программ, в которых присутствуют его классы-потомки.

  • MustInherit – класс не предназначен для создания экземпляров классов. Только его наследники класса могут использоваться для создания объектов.

  • NotInheritable – класс не может иметь наследников.

Для каждого элемента класса также можно установить разную видимость. Для этого используются те же ключевые слова, кроме MustInherit и NotInheritable [9].

Свойства. Свойства определяют атрибуты объекта и реализуют механизм доступа для чтения или изменения данных в полях объекта. Объявление свойства должно содержать его имя и тип, а также как минимум, одно объявление способа доступа к данному свойству [3]. Свойства могут быть доступными для чтения или для записи. Однако, в этом случае невозможно запретить изменение данного свойства и невозможно проверить корректность присваивания данных свойству.

Для решения этих проблем можно воспользоваться свойствами классов, которые применяют так называемые процедуры свойств. Процедуры свойств, предназначены для выполнения заданного кода при изменении значения свойства [11].

Конструкция Get в процедуре свойства является функцией, которая возвращает значение свойства при его чтении. Если убрать ключевые слова Get и End Get, то получить значение данного свойства будет невозможно.

Конструкция Set отвечает за получение нового значения для свойства. Если удалить ключевые слова Set и End Set, то изменить значение данного свойства будет невозможно. Для досрочного выхода из конструкции Set используются ключевые слова Exit Property.

Методы. Методы – это процедуры или функции, принадлежащие объекту. Методы определяют поведение объекта. Для вызова метода объекта указывается объект, затем, через точку, название метода. Методы могут возвращать или не возвращать значения и создаются так же, как процедуры и функции [4].

Методы могут быть открытыми и закрытыми. Открытые методы составляют интерфейс класса, а закрытые используются для внутренних нужд класса. Особый метод New() – (конструктор класса) автоматически вызывается при создании нового объекта. Конструктор может иметь аргументы.

Интерфейс можно представить, как абстрактный класс, в котором есть только объявления методов и свойств. Один и тот же интерфейс может быть реализован одновременно несколькими классами. Для создания экземпляра какого-либо класса достаточно сослаться не на указанный класс, а на интерфейс, реализованный данным классом Interface IEmployee [14].

Для обращения из класса к нему самому можно использовать ключевое слово MyClass. Для обращения к базовому классу – MyBase.



1.2 Интегрированная среда разработки Microsoft Visual Basic. Создание и сохранение проекта

1.2.1 Возможности Visual Basic

Visual Basic является мощным программным средством, с помощью которого можно реализовать широкий спектр практических задач. Основное достоинство этого языка программирования состоит в том, что он оптимально сочетает в себе простоту использования, доступность и большой набор разнообразных возможностей, позволяющих охватить все основные области программисткой деятельности.

В названии этого языка слово «Visual» означает способ, при помощи которого данным программным средством создаётся графический пользовательский интерфейс (Graphical user guide или сокращённо GUI).

Вместо того чтобы описывать в программе, где и каким образом появится на экране тот или иной, программист может просто расположить его в нужном месте еще на этапе разработки своего приложения. В качестве так заготовок в подавляющем большинстве случаев используются встроенные элементы управления, то есть уже созданные объекты с заданными наборами свойств и методов. Программист может изменять значения тех или иных свойств у выбранного объекта, а также описывать для него разнообразные методы. Кроме этого, имеется возможность обработки программистом различных событий, которые могут возникать в результате каких-либо действий пользователя. Основные возможности языка Visual Basic [6]:

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

2. Создание самых разнообразных многоуровневых и вплывающих меню.

3. Обработка событий мыши и клавиатуры, вывод на экран различных графических изображений, а также геометрических фигур.

4. Управление цветом, настройка принтера, использование стандартных диалогов.

5. Работа с графикой, рисование, обработка изображений.

6. Использование таймера.

7. Обработка файлов и каталогов на жёстком диске

8. Доступ к базам данных.

9. Разработка собственных элементов управления ActiveX [8].


1.2.2 Запуск и сохранение проекта

Запуск Visual Basic

Из главного меню Windows следует выбрать кнопку Пуск, расположенную на панели задач Windows. Затем в открывшемся главном меню Windows: необходимо выбрать подменю Программы далее в нем Microsoft Visual Basic 2010 Express затем Microsoft Visual Basic 2010 Express или используя ярлык на рабочем столе (если этот ярлык был создан и помещен на рабочий стол) (рис.1).


hello_html_m2eb00d3c.png

Рисунок 1– Окно запуска Microsoft Visual Basic 2010




Затем необходимо выбрать «создать проект» (рис.2) и выбирать «приложение Windows Form» (рис.3).

hello_html_65a63008.png
Рисунок 2 – Окно создание проекта.



hello_html_mdefae81.png
Рисунок 3 – Окно выбора проекта.

Сохранение проекта

Для сохранения проекта необходимо в меню Файл выбрать команду  Сохранить все (рис.4).

hello_html_mbc7d98.png
Рисунок 4 –Окно меню Файла.

В открывшемся диалоговом окне указывать имя проекта , сохраняется входящая в приложение форма (файл с расширением .sln). Используя раскрывающийся список Расположение, выбрать папку, в которой будет сохранена форма, затем в поле Имя расширения ввести имя и нажать кнопку Сохранить.

1.2.3 Окно среды разработки

После выполнения выше перечисленных действий на экране откроется окно среды разработки WindowsApplication1 (рис.5).

hello_html_m2166343c.png
Рисунок 5 – Окно среды разработки WindowsApplication1.

Среда разработки является интегрированной, так как в ней можно выполнять различные действия при разработке программного продукта, такие как проектирования и описание составных частей приложения, редактирование программного кода, компиляцию всех элементов приложения в выполняемый файл, а так же отладку приложения [7].

Основными элементами Microsoft Visual Basic являются:

Меню. В состав этого элемента входят все команды, которые используются при создании приложений в среде разработки Microsoft Visual Basic 2010. Среди пунктов меню есть как стандартные, присущие большинству окон Windows (Фаил, Правка, Вид, Справка, Сервис), так и пункты, при помощи которых разработчик может создавать, запускать или отлаживать своё приложение (Проект, Откладка, Данные). Меню расположено в верхней части Microsoft Visual Basic 2010 под заголовком окна [19].

Панель элементов управления. При помощи данного элемента среды разработки программист может размещать на форме те или иные элементы управления, которые необходимы для создания приложения.

Контекстное меню. Служит для реализации часто выполняемых действий. Для каждого объекта среды разработки предусмотрено свое контекстное меню. Чтобы его вызвать, необходимо подвести указатель мыши к соответствующему объекту и щёлкнуть на нём правой кнопкой мыши. После этого следует выбрать ту команду из списка, которую предполагалось выполнить.

Панель инструментов. Эти элементы представляют собой различные группы кнопок с изображенными на них иконками. При помощи данных кнопок можно выполнять те или иные операции, предусмотренные в среде разработки, не используя при этом меню; то есть выполнять одно действие нажатие соответствующей кнопки вместо нескольких, в случае выполнения этой же операции при помощи меню [11]. Панели инструментов расположены в верхней части Microsoft Visual Basic, под элементом меню (Таблица 1).


Таблица 1. Панель инструментов

Кнопка

Название

Значение

hello_html_193461b2.png

Создать новый проект

Используется для создания нового проекта.

hello_html_355d0281.png

Открыть новый файл

Предназначен для добавления в проект нового файла.

hello_html_355d0281.png

Добавить новый элемент

Предназначен для добавления нового элемента в проект.

Продолжение таблицы 1

Кнопка

Название

Значение

hello_html_355d0281.png

Сохранить Module1.vb

Используется для сохранения проекта с расширением .vb

hello_html_355d0281.png

Сохранить все

Предназначен для сохранения файлов, входящих в состав открытого проекта.

hello_html_355d0281.png

Вырезать

Используется для вырезания выделенного объекта или текста в буфер обмена.

hello_html_355d0281.png

Копировать

Служит для копирования текста или объекта в буфер

hello_html_355d0281.png

Вставить

Предназначен для вставки объекта или текста из буфера обмена в место расположения курсора.

hello_html_355d0281.png

Найти

Используется в случае необходимости поиска фрагмента текста в коде программы

hello_html_355d0281.png

Закомментировать выделенные строки

Используется для отображения списка доступных объектов в данном проекте

hello_html_355d0281.png

Отменить преобразование выделенных строк в комментарии

Используется для отмены выделенных строк комментарий.

hello_html_m2c0040e4.png

Отменить

Применяется тогда, когда нужно отменить последнее выполненное действие в среде разработки

hello_html_m2c0040e4.png

Вернуть

Предназначен для повторения последнего отмененного действия

hello_html_m2c0040e4.png

Начать откладку

Служит для запуска приложения на выполнение

hello_html_m2c0040e4.png

Остановить откладку

Применяется в случае необходимости прерывания выполнения программы (пауза)

hello_html_m2c0040e4.png

Шаг с заходом

Используется для вывода программы.


Продолжение таблицы 1

Кнопка

Название

Значение

hello_html_m2c0040e4.png

Шаг с обходом

Используется шаг для обхода сомой программы.

hello_html_m2c0040e4.png

Шаг с выходом

Используется шаг для выходы из программы.

hello_html_m2c0040e4.png

Обозреватель решений

Применяется для обзора решений.

hello_html_m2c0040e4.png

Окно свойства

Применятся в том случае, если нужно для

выделенного элемента посмотреть или изменить

какое-либо свойство

hello_html_m2c0040e4.png

Панель элементов

Применяется с целью отображения панели

инструментов в среде разработки

hello_html_m2c0040e4.png

Диспетчер расширений

Применяется для выбора расширения.

hello_html_m2c0040e4.png

Список ошибок

Используется для вывода на экран ошибок.

hello_html_m2c0040e4.png

Интерпретация

Связана с получением переменными значений в процессе работы программы.




1.3 Основные компоненты визуальной среды разработки Microsoft Visual Basic

В таблице 2 приведены названия и функциональное предназначение основных элементов управления в Microsoft Visual Basic.

Таблица 2. Элементы управления

Элемент

Название

Назначение

hello_html_m119804a4.png

Указатель

Выбор элемента управления

hello_html_m119804a4.png

Border (границы)

Выбор границ



Продолжение таблицы 2

Элемент

Название

Назначение

hello_html_m119804a4.png

Button (кнопка)

Выполнение приложением определённых действий

hello_html_m119804a4.png

Checkbox (флажок)

Установка/отключение настроек

hello_html_m119804a4.png

Combobox (поле со списком)

Выбор элемента из раскрывающегося Списка

hello_html_m119804a4.png

DataGrindVien(данные)

Отображает строки и столбцы данных в сетки, которые пользователь может изменить

hello_html_m119804a4.png

Image (изображение)

Вывод графического элемента в форме

hello_html_m119804a4.png

Label (метки)

Отображение надписей в форме

hello_html_m119804a4.png

ListBox (список)

Выбор пользователем какого-либо элемента из списка

hello_html_6a89cc4a.png

RadioButton (радио кнопки)

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

hello_html_6a89cc4a.png

Rectangle (прямоугольник)

Объединение в группу различных элементов управления (такие объекты называются контейнерами)

hello_html_6a89cc4a.png

StackPanel (стек понели)

Выбор пользователем какого-либо элемента из тех, которые имеются в списке

hello_html_6a89cc4a.png

TabControl (табло контроля)

Выбор пользователем каталога на диске

hello_html_6a89cc4a.png

TextBlock (текстовый блок)

Отображение надписей в форме

hello_html_6a89cc4a.png

TextBox (текстовое поле)

Ввод текста

hello_html_m360c0d29.png

Timer (время)

Компонент, создающий события с интервалом, определенным пользователем

hello_html_29670dec.png

Dateset

Представляет кэш данных в памяти

hello_html_337e4368.png

Groupbox

Отображает рамку вокруг группы элементов управление с возможностью включения заголовка

hello_html_337e4368.png

Panel

Позволяет пользователю группировать коллекции элементов управления

1.4 Особенности построения графических изображений в Microsoft Visual Basic.

Рисование текста в указанной позиции. Иногда может потребоваться нарисовать текст в виде одной горизонтальной строки, которая начинается в указанной точке. Для этого можно воспользоваться перегруженным методом DrawString класса Graphics, который принимает параметр Point или PointF. Для работы метода DrawString также требуются объекты Brush и Font.

Кроме того, можно использовать перегруженный метод DrawText класса TextRenderer, принимающий в качестве параметра объект Point. Методу DrawText также требуются объекты Color и Font.

На следующем рисунке показан текст, выведенный в нужной точке с помощью перегруженного метода DrawString (рис. 6).

hello_html_m79d68df6.png

Рисунок 6 – метод DrawString.

Рисование строки текста с использованием GDI+ Используется метод DrawString и передается ему нужный текст, объекты Point или PointF, а также Font и Brush.

using (Font font1 = new Font("Times New Roman", 24, FontStyle.Bold, GraphicsUnit.Pixel))

{

PointF pointF1 = new PointF(30, 10);

e.Graphics.DrawString("Hello", font1, Brushes.Blue, pointF1);

}

Рисование текста с использованием GDI. Метод DrawText класса TextRenderer позволяет использовать функциональность GDI, связанную с возможностями размещения текста на форме или элементе управления. Функции отображения текста GDI в большинстве случаев обладают большей производительностью и более точно управляют параметрами текста, чем функции GDI+.

Чтобы отобразить с помощью класса TextRenderer какой-либо текст, потребуется интерфейс IDeviceContext, например, Graphics и Font, а также место для вывода текста и цвет этого текста. Формат текста можно также указать с помощью перечисления TextFormatFlags.

Заливка открытых фигур. Для заливки контура необходимо передать объект GraphicsPath методу FillPath. Метод FillPath осуществляет заливку контура в соответствии с режимом заливки (альтернативным режимом или режимом заполнения), установленным для этого контура. Если контур содержит незамкнутые фигуры, то заливка происходит так, как если бы фигуры были замкнутыми. Интерфейс GDI+ замыкает фигуру с помощью прямой линии, соединяющей начальную и конечную точки (рис. 7).

hello_html_1c8b1f0b.png

Рисунок 7 - Заливка открытого рисунка.












2 Основные графические возможности Microsoft Visual Basic

2.1 Структурные элементы интерфейса GDI+. Методы рисования с помощью графических объектов

Интерфейс GDI+ предоставляет средства для проведения преобразований объемных или страничных систем координат, что позволяет пользователю интерфейса выполнять определенные действия (вращение, масштабирование, сдвиг и т. п.) над рисуемыми элементами. Эти два типа преобразований можно использовать в различных вариантах систем координат [29].

2.1.1 Типы систем координат

В GDI+ используется три координатных пространства: объемное, страничное и пространство устройства. Объемные координаты — это координаты, которые служат для моделирования определенного графического пространства. Именно они передаются методам в .NET Framework. Страничные координаты — это система координат, используемая областью рисования, например формой или элементом управления. Координаты устройства — это система координат, используемая физическим устройством, на котором производится рисование, будь то экран или лист бумаги. При вызове myGraphics.DrawLine(myPen, 0, 0, 160, 80) точки, передаваемые методу DrawLine, — (0, 0) и (160, 80) — относятся к объемной системе координат. Перед тем как интерфейс GDI+ выполнит рисование линии на экране, координаты подвергнутся последовательности преобразований. Одно из преобразований, называемое объемным преобразованием, переводит объемные координаты в страничные, после чего страничное преобразование переводит страничные координаты в координаты устройства [26].

2.1.2 Преобразования и системы координат

Предположим, что нужно использовать систему координат, начало которой расположено внутри клиентской области, а не в ее верхнем левом углу. Зададим, например, в качестве начала координат точку, удаленную на 100 точек от левого края и на 50 точек от верхнего края клиентской области. Такая система координат показана ниже на рисунке (рис. 8).

hello_html_7b77661c.png

Рисунок 8 – система координат в Microsoft Visual Basic 2010.

При вызове метода myGraphics.DrawLine(myPen, 0, 0, 160, 80) на экран выводится линия, изображенная ниже на приведенном рисунке (рис. 9).

hello_html_m108d95fd.png

Рисунок 9 – система координат с линией в Microsoft Visual Basic 2010.

Ниже приведены координаты конечных точек линии в трех системах координат (Таблица 3).

Таблица 3. Координаты конечных точек

Объемные координаты

от (0, 0) до (160, 80)

Страничные координаты

от (100, 50) до (260, 130)

Координаты устройства

от (100, 50) до (260, 130)

Обратите внимание, что начало отсчета страничного пространства координат расположено в верхнем левом углу клиентской области, такое положение является стандартным для этого пространства координат. Также обратите внимание, что, так как единицей измерения является точка, координаты устройства совпадают со страничными координатами. Если задать единицу измерения, отличную от точки, например, сантиметр, тогда координаты устройства будут отличаться от страничных координат [29].

За объемное преобразование, которое служит для перевода объемных координат в страничные, отвечает свойство Transform класса Graphics. В предыдущем примере объемное преобразование заключалось в смещении на 100 единиц вдоль оси X и на 50 единиц вдоль оси Y. В приведенном ниже примере демонстрируется задание объемного преобразования для объекта Graphics и использование этого объекта Graphics для рисования линии, изображенной на предыдущем рисунке.

myGraphics.TranslateTransform(100, 50);

myGraphics.DrawLine(myPen, 0, 0, 160, 80);

Преобразование, переводящее страничные координаты в координаты устройства, называется страничным преобразованием. За страничное преобразование отвечают свойства PageUnit и PageScale класса Graphics. Класс Graphics также содержит два доступных только для чтения свойства DpiX и DpiY, позволяющих узнать количество точек на дюйм в используемом устройстве отображения [22,24].

Свойство PageUnit класса Graphics можно использовать для задания единицы измерения, отличной от точки.

В приведенном ниже примере демонстрируется рисование линии из точки с координатами (0, 0) в точку с координатами (2, 1), где точка с координатами (2, 1) расположена на 2 дюйма правее и на 1 дюйм ниже точки с координатами (0, 0).

myGraphics.PageUnit = GraphicsUnit.Inch;

myGraphics.DrawLine(myPen, 0, 0, 2, 1);

Note:

Если предположить, что устройство отображения содержит 96 точек на дюйм по горизонтали и 96 точек на дюйм по вертикали, координаты конечных точек прямой, нарисованной в предыдущем примере, в каждом из трех пространств координат будет совпадать с приведенными ниже значениями (Таблица 4).

Таблица 4. Координаты конечных точек.

Объемные координаты

от (0, 0) до (2, 1)

Страничные координаты

от (0, 0) до (2, 1)

Координаты устройства

от (0, 0) до (192, 96)


Обратите внимание, что, так как начало отсчета объемных координат расположено в верхнем левом углу клиентской области, страничные координаты совпадают с объемными.

Сочетание объемного и страничного преобразования позволяет получать различные эффекты. Например, предположим, что нужно использовать дюймы в качестве единицы измерения, а начало координат должно быть расположено в 2 дюймах от левого края клиентской области и в 1/2 дюйма от верхней границы клиентской области. В приведенном ниже примере демонстрируется задание объемного и страничного преобразования для объекта Graphics и последующее рисование линии из точки с координатами (0, 0) в точку с координатами (2, 1) [24].

myGraphics.TranslateTransform(2, 0.5f);

myGraphics.PageUnit = GraphicsUnit.Inch;

myGraphics.DrawLine(myPen, 0, 0, 2, 1);

На приведенном ниже рисунке изображена полученная линия и система координат (рис. 11).

hello_html_73a753a6.png

Рисунок 10 - полученная линия и система координат в Microsoft Visual Basic 2010.

Если предположить, что устройство отображения содержит 96 точек на дюйм по горизонтали и 96 точек на дюйм по вертикали, координаты конечных точек прямой, нарисованной в предыдущем примере, в каждом из трех пространств координат будет совпадать с приведенными ниже значениями (Таблица 5).

Таблица 5. координаты конечных точек прямой

Объемные координаты

от (0, 0) до (2, 1)

Страничные координаты

от (2; 0,5) до (4; 1,5)

Координаты устройства

от (192, 48) до (384, 144)


В Visual Basic (VB) есть три графических объекта, которые позволяют работать с графикой: форма (Form); управляющий элемент графическое поле (PictureBox); рисунок (Image) [28].

Форма (Form) и графическое поле (PictureBox) –это два объекта-контейнера, которые: способны содержать в себе точечный рисунок из графического файла; обладают графическими методами и позволяют с помощью графических методов рисовать на своей поверхности; способны содержать в себе другие управляющие элементы [9].

Класс Graphics интерфейса GDI+ содержит следующие методы для рисования элементов приведенного выше списка: DrawLine (прямые линии), DrawRectangle (прямоугольники), DrawEllipse (эллипсы), DrawPolygon (многоугольники), DrawArc (дуги), DrawCurve (фундаментальные сплайны) и DrawBezier (Сплайны Безье). Каждый из этих методов перегружен, это значит, что каждый метод может получать различные наборы параметров. Например, один вариант метода DrawLine получает объект Pen и четыре числа, а другой вариант DrawLine (с тем же названием) получает объект Pen и два объекта Point [27].

Помимо перечисленных ранее методов для рисования линий, прямоугольников и сплайнов Безье существуют и вспомогательные методы, выполняющие рисование нескольких подобных элементов (линий, прямоугольников.) за один вызов: DrawLines, DrawRectangles. Для метода DrawCurve также существует вспомогательный метод DrawClosedCurve, замыкающий кривую путем соединения последней точки кривой с первой [14].

Все предназначенные для рисования методы класса Graphics используют объект Pen. Чтобы нарисовать какой–либо элемент, нужно создать как минимум два объекта: объект Graphics и объект Pen. Объект Pen предназначен для хранения таких атрибутов рисуемого элемента, как ширина лини и цвет. Объект Pen передается в каждый метод рисования в качестве одного из аргументов [18].

В GDI+ имеется класс Metafile, позволяющий записывать и отображать метафайлы. Метафайл, также называемый векторным рисунком, — это изображение, сохраненное в виде последовательности команд и параметров рисования. Команды и параметры, сохраненные в объекте Metafile, могут быть сохранены в памяти или записаны в файл или в поток [13].

Интерфейс GDI+ позволяет отображать метафайлы, сохраненные в одном из перечисленных ниже форматов.

WMF (Windows Metafile — метафайл Windows)

EMF (Enhanced Metafile —расширенный метафайл)

EMF+

Интерфейс GDI+ позволяет сохранять метафайлы в форматах EMF и EMF+, но не в формате WMF.

2.2 Построение закрашенных изображений в Mickosoft Visual Basic

Чтобы построить, некоторые фигуры, автоматически заполняемые каким-либо цветом, обычно применяют метод префикс "Fill" (заполнить). Например, FillRectangle, FillEllipse и FillPolygon [21].

Методы FillRectangle, FillEllipse используются для отображения закрашенного прямоугольника и закрашенного эллипса. Параметры методов FillRectangle, FillEllipse, кроме первого, такие же, как у методов DrawRectangle, DrawEllipse. Первый параметр Pen (перо) меняется на Brush (кисть) [20].

Графические методы DrawPolygon и FillPolygon используются для построения соответственно многоугольника и закрашенного многоугольника.

Параметры этих методов - перо или кисть и массив, задающий координаты вершин многоугольника. Координаты точек должны задаваться в определенной последовательности, то есть одна точка является началом отрезка прямой, а следующая - ее концом. Точка, представляющая собой конец одной линии, в то е время является началом следующей [23,25].

В программе Microsoft Visual Basic создаем новый проект под названием «My FillPolygon», помещаем на форму графическое поле (PictureBox) и 3 кнопки (Button) так, как показано ниже на рисунке, или как вам удобней (рис. 11).

F:\1.png

Рисунок 11 – окно программы.

Измените свойство Text объекта Button1 на «Нарисовать прямоугольник», объекта Button2 на «Нарисовать элипс», Button3 на «Нарисовать треугольник», а свойство Size (размер) объекта PictureBox на 359;264.

В обработчике события Click кнопки Button1, Button2, Button3 написать программные коды, соответствующие им свойством Text.

Код Visual Basic:

Public Class Form1

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim Graph1 As Graphics

Graph1 = PictureBox1.CreateGraphics

Dim Pen1 As New Pen(Color.DarkRed, 3)

Dim Brush1 As New SolidBrush(Color.Blue)

'Рисуем прямоугольник

Brush1.Color = Color.Magenta

Graph1.FillRectangle(Brush1, 85, 105, 75, 35)

End Sub


Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

Dim Graph1 As Graphics

Graph1 = PictureBox1.CreateGraphics

Dim Pen1 As New Pen(Color.DarkRed, 3)

Dim Brush1 As New SolidBrush(Color.Blue)

Dim blackpen As New Pen(Color.Black, 3)

'Рисуем окружность

Graph1.FillEllipse(Brush1, 40, 60, 60, 60)

End Sub


Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click

Dim Graph1 As Graphics

Graph1 = PictureBox1.CreateGraphics

Dim Pen1 As New Pen(Color.DarkRed, 3)

Dim Brush1 As New SolidBrush(Color.Blue)

Dim blackpen As New Pen(Color.Black, 3)

' Создаем точки - вершины треугольника

Dim point1 As New Point(85, 55)

Dim point2 As New Point(145, 55)

Dim point3 As New Point(115, 125)

'Описываем массив из трёх точек

Dim curvePoints As Point() = {point1, point2, point3}

' Рисуем треугольник по заданным в массиве точкам

Brush1.Color = Color.Aqua

Graph1.FillPolygon(Brush1, curvePoints)

End Sub


Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click

Dim Graph1 As Graphics

Dim Brush1 As New SolidBrush(Color.White)

Graph1 = PictureBox1.CreateGraphics

Graph1.FillRectangle(Brush1, 1, 50, 216, 136)

End Sub

End Class

Результаты работы программы приведены ниже на рисунках (рис. 12-15).

hello_html_m47474c7c.png

Рисунок 12 – закрашенный прямоугольник в Microsoft Visual Basic 2010.

hello_html_m7d422953.png

Рисунок 13 - закрашенный прямоугольник и эллипс в Microsoft Visual Basic 2010.

hello_html_49ebf457.png

Рисунок 14 - закрашенный прямоугольник, эллипс и треугольник в Microsoft Visual Basic 2010.

hello_html_57bf6bbc.png

Рисунок 15 – очистка окна программы в Microsoft Visual Basic 2010.

2.3 Работа с растровыми и векторными изображениями в Microsoft Visual Basic

Класс Image — это абстрактный базовый класс, содержащий методы для работы с растровыми изображениями (точечные рисунки) и векторными рисунками (метафайлы). Классы Bitmap и Metafile наследуют у класса Image. Класс Bitmap расширяет возможности класса Image за счет дополнительных методов для загрузки, сохранения и использования растровых изображений. Класс Metafile расширяет возможности класса Image за счет дополнительных методов для записи и анализа векторных рисунков.

2.3.1 Типы точечных рисунков

Растровое изображение или битовый образ — это массив битов, задающих цвет для каждой точки (пикселя) в прямоугольном массиве точек. Количество битов, задающих цвет одной точки, определяет количество цветов, которые могут быть заданы для этой точки. Например, если точка представляется четырьмя битами, то для каждой такой точки можно задать один из 16 различных цветов (2^4 = 16). В приведенной ниже таблице содержится несколько примеров того, сколько цветов можно задавать для точки, представляемой определенным количеством битов.

Таблица 6. Представление растровых изображений в памяти компьютора.

Количество битов на точку

Количество цветов, которые могут быть заданы для точки

1

2^1 = 2

2

2^2 = 4

4

2^4 = 16

8

2^8 = 256

16

2^16 = 65,536

24

2^24 = 16,777,216

Файлы, которые служат для хранения точечных рисунков, обычно включают один или более информационных блоков, содержащих такие данные, как количество битов на одну точку, количество точек в строке и количество строк в массиве. Такой файл может также содержать таблицу цветов (иногда называемую цветовой палитрой). Таблица цветов сопоставляет числа из растрового образа с определенными цветами. На приведенном ниже рисунке изображен увеличенный рисунок, его представление в виде растрового образа и соответствующая таблица цветов (рис. 19). Каждая точка описывается 4-битным числом, поэтому таблица цветов содержит 2^4 = 16 цветов. Каждый цвет в таблице представляется 24-битным числом: 8 бит для интенсивности красного, 8 бит для интенсивности зеленого и 8 бит для интенсивности синего. Числа отображаются в шестнадцатеричной системе счисления (системе счисления с основанием 16): A = 10, B = 11, C = 12, D = 13, E = 14, F = 15.

hello_html_61dd06e3.png

Рисунок 16 – кодирование цветов.

Обратите внимание на точку рисунка на пересечении строки 3 и столбца 5. Соответствующее ей число в растровом образе равно 1. Согласно таблице цветов, число 1 соответствует красному цвету, поэтому цвет точки — красный. Все элементы верхней строки битового образа равны 3. Согласно таблице цветов число 3 соответствует синему, поэтому все точки верхней строки изображения синие.

Точечные рисунки, которые содержат ссылки на таблицу цветов, иногда называются растровыми изображениями, индексированными палитрой. Для некоторых растровых рисунков таблица цветов не нужна. Например, если в точечном рисунке каждой точке соответствует 24 бита, в такой растровый рисунок можно заносить непосредственно 24-битные представления цветов, а не номера этих цветов в таблице цветов. Приведенный ниже рисунок — это растровое изображение, в котором не используется таблица цветов и цвета указываются явным образом (каждой точке соответствует 24 бита) (рис. 20). На приведенном ниже рисунке изображение также увеличено. В битовом образе число FFFFFF обозначает белый цвет, число FF0000 обозначает красный, число 00FF00 обозначает зеленый, а число 0000FF обозначает синий цвет.

hello_html_35937bb9.png

Рисунок 17 – битовое представление увеличенного изображения.






























Заключение

Microsoft Visual Basic – это современная инструментальная среда разработки программного обеспечения, включающая в себя язык программирования и среду разработки. Visual Basic сочетает в себе процедуры и элементы объектно-ориентированных и компонентно-ориентированных языков программирования. Среда разработки Visual Basic включает инструменты для визуального конструирования пользовательского интерфейса.

В данной курсовой были решены следующие задачи:

1. Раскрыты основы объектно-ориентированного программирования.

2. Рассмотрена интегрированная среда разработки Microsoft Visual Basic.

3. Раскрыты возможности Microsoft Visual Studio.

4. Охарактеризованы основные элементы управления.

5. Рассмотрены методы рисования с помощью графических объектов в Microsoft Visual Basic.

6. Раскрыты особенности построения линии и закрашенного прямоугольника в Microsoft Visual Basic.

7. Раскрыты особенности построения дуги и закрашенного эллипса в Microsoft Visual Basic.

8. Разработано приложение, реализующее построение закрашенных фигур в Microsoft Visual Basic.

Таким образом, все задачи исследования были решены, цель достигнута.



Список использованных источников

  1. Аляев, Ю. А., Козлов, О. А. Алгоритмизация и языки программирования Pascal, C++, Visual Basic: Учебно-справочное пособие / Ю. А. Аляев., О.А. Козлов. – М.: Финансы и статистика, 2011. – 320 с.

  2. Браун, С. Visual Basic c самого начала / С. Браун. – СПб: Питер, 2012 – 672 с.

  3. Гарнаев, А. Самоучитель VBA. Второе издание / А. Гарнаев. – БХВ-Петербург, 2009. – 288 с.

  4. Дукин, А. Н. Самоучитель Visual Basic 2010 / А. Н. Дукин, А. А. Пожидаев. – СПб: БХВ-Петербург, 2010. – 560 с.

  5. Забиров, В. Visual Basic 2010 на примерах / В. Забиров. – Санкт- Петербург «БХВ- Петербург», 2010. – 338 с.

  6. Ивьен, Б., Берес, Д. Visual Basic .NET. Библия пользователя/ Б. Ивьен, Д. Берес. – Вильямс, 2012. – 742 с.

  7. Кадырова, Г. Р. Основы алгоритмизации и программирования / Г. Р. Кадырова. – Ульяновск: УлГТУ, 2014. – 95 с.

  8. Климов, А. Занимательное программирование на Visual Basic .NET / А. Климов. – БХВ-Петербург, 2011. – 568 с.

  9. Колесов, А. Среда разработки Visual Studio .NET / Колесов, А. – BYTE/Россия № 8, 2009. – 366 с.

  10. Коннелл, Д. Разработка элементов управления Microsoft .NET на Microsoft Visual Basic .NET / Д. Коннел – Русская Редакция, 2011 – 232 с.

  11. Культин, Н. Visual Basic. Освой на примерах / Н. Культин. – БХВ-Петербург, 2010. – 232 с.

  12. Лукин, С. Н. Понятно о Visual Basic.NET. Самоучитель / С. Н. Лукин. – Диалог-МИФИ, 2009. – 288 с.

  13. Макдональд, М Microsoft Visual Basic .NET: рецепты программирования / М. Макдональд. – Русская Редакция, 2012. – 246с.

  14. Марчуков, А. В. Работа в Microsoft Visual Studio / А. В. Марчуков, А. О. Савельев. – Интернет-Университет Информационных Технологий, 2009. – 332 с.

  15. Пауэрс, Л., Снелл, М. Microsoft Visual Studio 2008. Наиболее полное руководство / Л. Пауэрс, М. Снелл. – БХВ-Петербург, 2009. – 982 с.

  16. Петцольд, Ч. Программирование для Microsoft Windows на Microsoft Visual Basic .NET / Ч. Петцольд – Русская Редакция, 2012. – 568 с.

  17. Рихтер, Д. Программирование на платформе Microsoft.NET Framework 4.5 на языке C#. 4-е издание / Д. Рихтер. – Питер,2013. – 546 с.

  18. Сафронов, И. К. Visual Basic в задачах и примерах / И. К. Сафронов. – БХВ-Петербург, 2010. – 400 с.

  19. Семпф, Б. Microsoft Visual Basic 2005 для чайников / Б. Семпф. – Диалектика, 2009. – 288 с.

  20. Симонович, С. В., Евсеев, Г. А. Занимательное программирование: Visual Basic/ С. В. Симинович, Г. А. Евсеев. – АСТ-Пресс Книга: Информком-Пресс, 2011. – 320с.

  21. Слепцова, Л. Д. Программирование на VBA: Самоучитель / Л. Д. Слепцова. – СПб: Компьютерное издательство «Диалектика», 2009. – 384 с.

  22. Трусов, М. А. Visual Basic .NET. Практическое руководство для начинающего программиста / М. А. Трусов. – НТ Пресс, 2012. – 898 с.

  23. Трусов, М. А. Visual Basic .NET. Создание графических объектов и основы программирования / М. А. Трусов. – НТ Пресс,2012. – 742 с.

  24. Федоров, А., Елманова Н. Изучаем Visual Studio .NET. Часть 2. Создание Windows-приложений / А. Федоров, Н. Елманова. – КомпьютерПресс № 5, 2011. – 798 с.

  25. Федоров, А., Елманова, Н. Изучаем Visual Studio .NET Studio .NET. Часть 3.Компоненты Windows-приложений / А. Федоров, Н. Елманова; КомпьютерПресс № 6, 2010. – 252 с.

  26. Федоров, А., Елманова, Н. Изучаем Visual Studio .NET. Часть 1. Знакомство со средой разработки / А. Федоров, Н. Елманова. – КомпьютерПресс № 4,2010. – 328 с.

  27. Фокселл, Д. Освой самостоятельно Visual Basic .NET за 24 часа / Д. Фокселл. – 2009. – 998 с.

  28. Фокселл, Д. Освой самостоятельно Visual Basic .NET за 24 часа. / Д. Фокселл – Вильямс, 2012. – 998 с.

  29. Макки, А. Введение в .NET 4.0 и Visual Studio 2010: учебник для профессионалов / А. Макки. – Вильямс, 2010. – 382 с.

  30. Сайлер, Б., Споттс, Д. Использование Visual Basic 6.0. / Б. Сайлер, Д. Споттс. – Издательский Дом «Вильямс», 2009. – 832 с.



Автор
Дата добавления 20.12.2015
Раздел Информатика
Подраздел Другие методич. материалы
Просмотров902
Номер материала ДВ-273626
Получить свидетельство о публикации

Похожие материалы

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