Вывод графического изображения на форму - Программирование графики в Microsoft Visual Basic
Для того чтобы вывести графическое изображение в окне формы необходимо в созданном средствами Visual Studio приложении WindowsApplication вставить в класс формы строку this.
Методы, определенные в классе Graphics, требуют, указания положения или область для вывода графического объекта. Для передачи методам подобной информации в пространстве имен System. Drawing предусмотрены типы Point, Rectangle, Region и Size.
- - Point используется для передачи координат (х, у); - Rectangle определяет координаты двух точек, которые будут восприняты как верхний левый и нижний правый углы прямоугольника; - Тип Size определяет размер прямоугольной области в каком-либо измерении (то есть используется для указания высоты или ширины); - Тип Region необходим для работы с непрямоугольными областями; - Внутренние переменные, используемые для хранения данных в Point, Rectangle и Size, являются целочисленными (то есть относятся к типу int). Если же возникла необходимость указывать координаты или размеры при помощи значений с плавающей запятой (тип float), то можно использовать типы PointF, RectangleF и SizeF [9, с.64];
Таблица 1 - Члены типа Point (PointF)
Член |
Назначение |
X, У |
Эти свойства позволяют получать и устанавливать значения координат х и у |
IsEmpty |
Это свойство возвращает true, если значения х и у равны нулю |
Offset( ) |
Этот метод позволяет произвести смещение точки относительно исходной позиции |
Таблица 2 - Члены классов Rectangle и RectangleF
Член |
Назначение |
!=, = = |
Перегруженные операторы, позволяющие сравнивать два прямоугольника |
Inflate( ), Intersect( ), Union( ) |
Эти статические методы позволяют увеличивать размеры прямоугольника и создавать новые прямоугольники путем разделения или объединения существующих. |
Тор, Left, Bottom, Right, |
Эти свойства устанавливают измерения прямоугольника |
Height, Width |
Эти свойства определяют высоту и ширину прямоугольника |
Contains() |
Этот метод позволяет определить, попадает ли точка с указанными координатами (или другой прямоугольник) внутрь области, занимаемой прямоугольником |
X, Y |
Определяют координаты x и у верхнего левого угла прямоугольника |
Класс Region
Этот класс представляет собой внутреннюю область, занятую геометрической фигурой. Чтобы создать объект этого класса, необходимо передать его конструктору некоторый объект, представляющий собой геометрическую фигуру. После того как объект класса Region создан, можно использовать многочисленные члены этого класса. Наиболее важные из них представлены в таблице.
Таблица 3 - Члены класса Region
Член |
Назначение |
Complement() |
Дополняет объект Region другими графическими объектами, которые не пересекаются с исходным объектом Region |
Exclude() |
Исключает область, занимаемую другим графическим объектом, из области объекта Region |
Intersect() |
Перегружен. Уменьшает область, занимаемую исходным объектом Region, до области наложения друг на друга исходного и указанного пользователем объектов Region |
GetBounds() |
Возвращает объект класса RectangleF, представляющий прямоугольник, в который точно вписана область, занимаемая объектом Region |
IsEmpty(), MakeEmpty() |
Позволяют определить, имеет ли область, занимаемая данным объектом Region, нулевой размер, или установить нулевой размер для области Region |
IsInfinite(), MakeInfinite() |
Позволяют определить, является ли область, занимаемая объектом Region, бесконечной, или установить бесконечный размер для данной области |
Translate() |
Сдвигает координаты объекта Region на указанную пользователем величину |
Union() |
Объединяет указанный объект Region с другим графическим объектом |
Хог() |
Объединяет указанный объект Region с другим графическим объектом, исключая при этом область пересечения этих двух объектов |
Вывод графических объектов без события Paint
Бывает так, что вывод графического объекта необходимо произвести не в стандартных ситуациях, то есть не когда возникает событие Paint, а в ответ на другие события. Например, вывести маленький кружок в том месте, где на форме был сделан щелчок мышью. Первое, необходимо получить объект Graphics, а затем выполнить с этим объектом необходимые манипуляции. Объект Graphics можно получить при помощи метода Graphics. FromHwnd(). Обратите внимание, что единственный параметр, передаваемый этому методу, -- это значение свойства Handle. Свойство Handle, определено в классе Control и наследуется всеми классами, производными от Control [9, с.68]..
При любой перерисовке формы все кружки, выведенные на форме после щелчков мышью, исчезнут. Чтобы информация о графических объектах сохранялась и использовалась при перерисовке формы самый простой способ -- создать внутреннюю коллекцию (например, ArrayList) и помещать туда нужные объекты. Затем к этой коллекции будет обращаться метод OnPaint().
Возможности класса Graphics
Наиболее часто используемые методы этого класса представлены в таблице.
Таблица 4 - Некоторые методы класса Graphics
Метод |
Назначение |
FromHdc(), FromHwnd(), FromImage() |
Эти статические методы обеспечивают возможность получения объекта Graphics из элемента управления или изображения |
Clear() |
Заполняет объект Graphics выбранным пользователем цветом, удаляя его предыдущее содержимое |
DrawArc() |
Этот метод предназначен для вывода дуги. |
DrawEllipse() |
Рисует эллипс |
DrawLine() |
Рисует линию |
DrawPie() |
Рисует сектор |
DrawPolygon( ) |
Рисует замкнутую произвольную область |
DrawRectange() |
Рисует прямоугольник |
DrawString() |
Выводит строку |
FillElllpse() |
Рисует закрашенный эллипс |
FillPie() |
Рисует закрашенный сектор |
FillPolygon() |
Рисует закрашенную криволинейную замкнутую область |
FillRectangle() |
Рисует закрашенный прямоугольник |
Класс Pen
Pen - класс пера, имеющий два основных атрибута: цвет и ширину.
Таблица 5 - Свойства класса Реn
Свойство |
Назначение |
Color |
Определяет цвет создаваемых объектом Реn линий |
CustomStartCap, CustomEndCap |
Позволяют получить или установить стиль "наконечника" пера, который будет показан в начале линии (StartCap) и в конце линии (EndCap) |
DashCap |
Позволяет получить или установить стиль "наконечника" для перьев, рисующих пунктирные линии |
DashOffset |
Устанавливает смещение начала пунктира относительно исходной точки пунктирной линии |
DashStyle |
Позволяет получить или установить стиль для пунктирных линий, создаваемых при помощи данного объекта Реn |
LineJoin |
Позволяет получить или установить стиль объединения при пересечении двух линий, выводимых данным объектом Реn |
Width |
Позволяет получить или установить ширину данного пера |
Кроме класса Реn в GDI+ также можно использовать коллекцию заранее определенных перьев (коллекция Pens). При помощи статических свойств коллекции Pens можно мгновенно получить уже готовое перо, без необходимости создавать его вручную. Однако все типы Реn, которые создаются при помощи коллекции Pens, имеют одну и ту же одинаковую ширину, равную 1. Чтобы установить перо для вывода линий определенного стиля необходимо подключить в начале кода using System. Drawing. Drawing2D; затем создавая перо [9,с.79].
Похожие статьи
-
Объектно-ориентированное программирование в Microsoft Visual Basic Объектно-ориентированное программирование - это методология программирования,...
-
Visual Basic представляет собой интегрированную среду разработки, которая содержит набор инструментов, облегчающих и ускоряющих процесс разработки...
-
Значения свойств объектов можно менять двумя способами: При проектировании : В каждый момент проектирования только один объект является выделенным...
-
Введение - Программирование графики в Microsoft Visual Basic
Microsoft Visual Basic (VB) - это система программирования, предназначенная для написания программ, работающих под управлением операционной системы...
-
Объекты управления и их свойства - Visual Basic. Основы программирования
Объектом называется некая сущность, которая, во-первых, четко проявляет свое поведение, а во-вторых, является представителем некоторого класса подобных...
-
Общие рекомендации по выполнению работ Перед выполнением первой работы создайте на диске свой каталог и в дальнейшем сохраняйте свои проекты в нем; При...
-
Цель Работы - изучить основные способы работы с пользовательским типом данных "класс", его объектами, методами и способы доступа к ним. - Теоретические...
-
Форматы файлов для хранения растровых графических изображений - Обзор графических редакторов
Как правило, файлы для хранения растровых графических изображений логически состоят из двух частей: заголовка и области данных. В заголовке указаны...
-
Проект приложения, Структура проекта, Запуск проекта - Visual Basic. Основы программирования
Программный проект - это совокупность частей, составляющих будущее Windows-приложен. Любой проект должен состоять из одной или нескольких Экранных форм и...
-
Любой объект можно связать с набором процедур, исполняемых в строго определенные моменты. Процедура ( Procedure ) - это группа операторов языка....
-
Постановка задачи - составление по возможности точного и понятного словесного описания того, как должно работать будущее приложение, - что должен делать...
-
Фрактал - это рисунок, который состоит из подобных между собой элементов. Существует большое количество графических изображений, которые являются...
-
- рисуем графический примитив, например, эллипс у рыбки; - накладываем сверху на эллипс другой графический объект так, чтобы он закрывал часть эллипса; -...
-
Растровая графика оперирует с изображениями в виде растров. Неформально можно сказать, что растр - это описание изображения на плоскости путем разбиения...
-
Под термином графика обычно понимается визуальное (то есть воспринимаемое зрением) представление каких-либо реальных или воображаемых объектов. Графика...
-
Цель Работы - изучить приемы создания и использования шаблонов классов. - Теоретические сведения Достаточно часто встречаются классы, объекты которых...
-
Объектно ориентированный подход - Разработка видеолекций по программированию С++
Основной идеей объектно-ориентированного подхода является объединение данных и действий, которые производятся над этими данными в одно целое, которое...
-
При изменение имени ( Name ) объектов Visual Basic рекомендуется использовать следующую простую схему: Начинать название с трехбуквенного префикса;...
-
Сохранение проекта, Открытие проекта, Компиляция проекта - Visual Basic. Основы программирования
Для сохранения следует выполнить File / Save Project или нажать кнопку на панели инструментов. Visual Basic сначала предложит сохранить форму, а затем...
-
Самостоятельное выполнение заданий позволяет закрепить навыки работы учащихся в среде Visual Basic Преподаватель может использовать их В качестве...
-
Предисловие, Теория "Основные понятия Visual Basic" - Visual Basic. Основы программирования
Язык программирования Visual Basic все шире используется в российском образовании. Одна из проблем, с которыми сталкивается преподаватель, работающий с...
-
Выводы - Создание таблиц в Microsoft Excel
Итак, в ходе работы мною были изучены необходимые учебные материалы, а также были отработаны навыки работы с табличным процессором MS Excel 2010. Я...
-
- установить свойство Align в значение AlBottom ; - выбрать свойство Panels и с помощью кнопки в левом верхнем углу разбить панель на две части (рисунок...
-
Математический аппарат Для понимания всего дальнейшего полезно знать и представлять себе геометрическую интерпретацию задач линейного программирования,...
-
Кодирование цвета Кодируется цвет графических изображений с помощью бит. Количество бит, с помощью которых закодирован цвет называют битовой глубиной...
-
Методика решения задач ЛП графическим методом - Линейное программирование
I. В ограничениях задачи (1.2) заменить знаки неравенств знаками точных равенств и построить соответствующие прямые. II. Найти и заштриховать...
-
Windows Azure Table - программирование - Введение в облачные решения Microsoft
Базовые операции таблиц и сущностей Создание; Извлечение с применением фильтров; Обновление (только сущности); Удаление; Транзакции над группами...
-
Варианты - Решение задач линейного программирования с использованием Microsoft Excel
Используя MS Excel, найти решение для модели ЛП, соответствующей заданному варианту (табл. 1.5). Таблица 1.5 Варианты задач к лабораторной работе № 1 №...
-
Выводы по результатам тестирования - Исследование алгоритмов
По полученным в ходе анализа данным сделать вывод о качестве обученных каскадных классификаторов и о причинах таких результатов, а также выяснить, какие...
-
Составьте программу для реализации графического редактора линий, изображенного на рисунке 1.1.: Рисунок 1.1. - Пример работы Целью данной работы является...
-
Трехмерная графика - Компьютерная графика и ее аппаратная реализация (обзор видеокарт)
Трехмерная графика нашла широкое применение в таких областях, как научные расчеты, инженерное проектирование, компьютерное моделирование физических...
-
Введение - Обьекто-ориентированное программирование
Объектно-ориентированное программирование (ООП) позволяет разложить проблему на составные части, каждая из которых становится самостоятельным объектом....
-
Виды компьютерной графики, Фрактальная графика, Трехмерная графика - Компьютерная графика
Фрактальная графика Фрактальная графика основана на математических вычислениях. Базовым элементом фрактальной графики является сама математическая...
-
Видеолекции - Разработка видеолекций по программированию С++
Для записи видео лекций были разработаны программы на С++ с помощью которых были показаны такие темы как создание классов в среде Visual Studio,...
-
В ходе исследования был разработан веб-редактор для визуального языка в соответствии с требованиями, выделенными в главе 2, по результатам опроса...
-
Применение полученных знаний на практике. Создание приложения - Программирование на языке C++
Я применил полученные знания при разработке простого приложения TodoList. Я соблюдал все принципы SOLID. Придерживаясь принципа инверсии зависимости я...
-
Для лучшего понимания динамики модели и наблюдения за процессами, в AnyLogic можно строить анимированные изображения, состоящие из динамических...
-
Выбор параметров регулятора - ПИД-контроллеры фирмы Honeywell
В общей теории автоматического управления структура регулятора выбирается исходя из модели объекта управления. При этом более сложным объектам управления...
-
Некоторые WWW browser позволяют пользователю, заполнив специальную форму, возвращающую полученное значение, выполнять некоторые действия на вашем...
-
Что такое графический способ записи алгоритмов - Основы программирования
Графический способ представления алгоритмов является более компактным и наглядным по сравнению со словесным. Такое графическое представление называется...
Вывод графического изображения на форму - Программирование графики в Microsoft Visual Basic