Особенности редактирования графических данных в Microsoft Visual Basic, Построение изображений указателем мыши в Microsoft Visual Basic - Программирование графики в Microsoft Visual Basic
Построение изображений указателем мыши в Microsoft Visual Basic
Приведем пример, в котором демонстрируется рисование указателем мыши на форме, то есть задача состоит в том, чтобы написать программу, позволяющую при нажатой левой или правой кнопке мыши рисовать в форме. Если пользователь отпустит кнопку мыши, то рисование прекращается. В проектируемой форме следует предусмотреть кнопку "Стереть", предназначенную для очистки формы.
Вначале необходимо создать форму с командной кнопкой, как мы это делали прежде. Для этого запускаем Visual Basic и в окне Создать проект выбираем шаблон Приложение Windows Form для Visual Basic. Для того чтобы создать кнопку Button, делаем следующее: Вид - Панель элементов - Button (перетащил на форму). Далее переходим в программный код и введем соответствующий текст, представленный ниже:
Public Class Form1
Dim Рисовать_ли As Boolean
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase. Load
Me. Text = "Рисую мышью в форме"
Button1.Text = "Стереть"
Рисовать_ли = False ' в начале - не рисовать
End Sub
Private Sub Form1_MouseDown(sender As Object, e As MouseEventArgs) Handles MyBase. MouseDown
' Если нажата кнопка мыши - MouseDown, то рисовать
Рисовать_ли = True
End Sub
Private Sub Form1_MouseUp(sender As Object, e As MouseEventArgs) Handles MyBase. MouseUp
' Если кнопку мыши отпустили, то НЕ рисовать
Рисовать_ли = False
End Sub
Private Sub Form1_MouseMove(sender As Object, e As MouseEventArgs) Handles MyBase. MouseMove
' Рисование прямоугольника, если нажата кнопка мыши
If Рисовать_ли = True Then
' Рисовать прямоугольник в точке (e. X, e. Y)
Dim Графика = CreateGraphics()
Графика. FillRectangle(New SolidBrush(Color. Red), e. X, e. Y, 10, 10)
' 10x10 пикселов - размер сплошного прямоугольника
' e. X, e. Y - координаты указателя мыши
Графика. Dispose() ' Эквивалент C++: delete Графика
End If
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
' Методы очистки формы:
Dim Графика = CreateGraphics()
Графика. Clear(Me. BackColor)
' Графика. Clear(SystemColors. Control1)
' Графика. Clear(Color. FromName("Control"))
' Графика. Clear(Color. FromKnownColor(KnownColor. Control))
' Графика. Clear(ColorTranslator. FromHtml("#FOFOFO"))
' Me. Refresh() ' Этот метод также перерисовывает форму
End Sub
End Class
В начале программы объявляем переменную Рисовать_ли Логического типа (Boolean) со значением False. Эта переменная либо позволяет (Рисовать_ли = True) рисовать в форме при перемещении мыши (событие MouseMove), либо не разрешает делать это (Рисовать_ли = False). Область действия переменной Рисовать_ли - Весь класс Form1, Т. е. изменить или выяснить ее значение можно в любой процедуре этого класса [9, с.130].
Значение переменной Рисовать_ли Может изменить либо событие MouseUp (кнопку мыши отпустили, рисовать нельзя, Рисовать_ли = False), либо событие MouseDown (кнопку мыши нажали, рисовать можно, Рисовать_ли = True). При перемещении мыши с нажатой кнопкой программа создает графический объект Graphics пространства имен System. Drawing, используя метод Create Graphics(), и рисует прямоугольник FillRectangle() Размером 10X10 пикселов, заполненный красным цветом. E. X, e. Y - координаты указателя мыши, которые также являются координатами левого верхнего угла прямоугольника.
На рисунке 12 Приведен пример рисования в форме. Чтобы стереть все нарисованное в форме, следует нажать кнопку "Стереть". При этом вызывается метод Refresh(), предназначенный для Перерисовывания Формы.
Рисунок 12 - Окно рисования указателем мыши в форме
В комментариях приведены варианты реализации очистки формы от всего нарисованного на ней пользователем. Например, путем создания графического объекта Create Graphics() и закрашивание формы в ее первоначальный цвет KnownColor.Control [9,с.135].
Можно заметить, что можно было бы очистить область рисования более короткой командой Clear (Color. White), т. е. закрасить форму белым цветом (White), либо выбрать другой цвет из списка 146 цветов после ввода оператора "точка" (.) за словом Color. Однако ни один из 146 цветов не является первоначальным цветом формы (BackColor). Поэтому задаем этот цвет через другие константы цвета, представленные в перечислении Color. FromKnownColor. Также можно задать цвет как Color. FromName ("Control"). Можно использовать функцию перевода 16-ричного кода цвета ColorTranslator. FromHtml(). Оба эти варианта также представлены в комментарии. Цвет #FOFOFO является 16-ричным представлением нужного мне цвета. интегрированный приложение графический примитив
Очистить форму от всего нарисованного на ней можно нажав на кнопку в форме "Стереть". Рисовать в форме можно как левой, так и правой кнопками мыши[9,с.130].
Похожие статьи
-
Вывод графического изображения на форму - Программирование графики в Microsoft Visual Basic
Для того чтобы вывести графическое изображение в окне формы необходимо в созданном средствами Visual Studio приложении WindowsApplication вставить в...
-
Visual Basic представляет собой интегрированную среду разработки, которая содержит набор инструментов, облегчающих и ускоряющих процесс разработки...
-
Объектно-ориентированное программирование в Microsoft Visual Basic Объектно-ориентированное программирование - это методология программирования,...
-
Введение - Программирование графики в Microsoft Visual Basic
Microsoft Visual Basic (VB) - это система программирования, предназначенная для написания программ, работающих под управлением операционной системы...
-
При изменение имени ( Name ) объектов Visual Basic рекомендуется использовать следующую простую схему: Начинать название с трехбуквенного префикса;...
-
Объекты управления и их свойства - Visual Basic. Основы программирования
Объектом называется некая сущность, которая, во-первых, четко проявляет свое поведение, а во-вторых, является представителем некоторого класса подобных...
-
Проект приложения, Структура проекта, Запуск проекта - Visual Basic. Основы программирования
Программный проект - это совокупность частей, составляющих будущее Windows-приложен. Любой проект должен состоять из одной или нескольких Экранных форм и...
-
Значения свойств объектов можно менять двумя способами: При проектировании : В каждый момент проектирования только один объект является выделенным...
-
Графический интерфейс пользователя - Предметный указатель базы данных
Приложение содержит текстовое меню выбора действий. Выбор действия осуществляется вводом с клавиатуры номера соответствующего пункта меню. После запуска...
-
Общие рекомендации по выполнению работ Перед выполнением первой работы создайте на диске свой каталог и в дальнейшем сохраняйте свои проекты в нем; При...
-
Растровая графика оперирует с изображениями в виде растров. Неформально можно сказать, что растр - это описание изображения на плоскости путем разбиения...
-
Visual component library graphics Цель работы: изучение графических возможностей стандартной библиотеки визуальных компонентов VCL, функций и процедур...
-
Составьте программу для реализации графического редактора линий, изображенного на рисунке 1.1.: Рисунок 1.1. - Пример работы Целью данной работы является...
-
Средства для обработки компьютерной графики - Основы преобразования изображений и видео
Программные средства создания растровых изображений. Среди программ, предназначенных для создания компьютерной двумерной живописи, самыми популярными...
-
- установить свойство Align в значение AlBottom ; - выбрать свойство Panels и с помощью кнопки в левом верхнем углу разбить панель на две части (рисунок...
-
Регистрация нового пользователя в системе возможна двумя способоами: 1) Самостоятельная регистрация пользователя; 2) Регистрация пользователя...
-
Фрактал - это рисунок, который состоит из подобных между собой элементов. Существует большое количество графических изображений, которые являются...
-
Сохранение проекта, Открытие проекта, Компиляция проекта - Visual Basic. Основы программирования
Для сохранения следует выполнить File / Save Project или нажать кнопку на панели инструментов. Visual Basic сначала предложит сохранить форму, а затем...
-
Любой объект можно связать с набором процедур, исполняемых в строго определенные моменты. Процедура ( Procedure ) - это группа операторов языка....
-
Постановка задачи - составление по возможности точного и понятного словесного описания того, как должно работать будущее приложение, - что должен делать...
-
Самостоятельное выполнение заданий позволяет закрепить навыки работы учащихся в среде Visual Basic Преподаватель может использовать их В качестве...
-
Кодирование цвета Кодируется цвет графических изображений с помощью бит. Количество бит, с помощью которых закодирован цвет называют битовой глубиной...
-
Под термином графика обычно понимается визуальное (то есть воспринимаемое зрением) представление каких-либо реальных или воображаемых объектов. Графика...
-
Создание форм для ввода данных, Создание отчетов - Разработка информационной системы "Гостиница"
Для того чтобы нам было в дальнейшем удобно и быстро работать с базой данной мы должны создать ряд нужных форм. Формы в БД Access можно создавать с...
-
Построение модели - Построение модели сердца
В нашей модели должны присутствовать две переменные состояния - х и b, и два параметра - х0 и eps, где х0 - начальное значение х. Начальное значение...
-
Запись и редактирования видеоуроков - Разработка видеолекций по программированию С++
После запуска Camtasia Studio появляется главное окно программ с окном приветствия, в нем можно выбрать Record the screen (запись с экрана) - чтобы сразу...
-
Векторная графика - Построение векторных схем
Векторная или объектная графика представляет собой изображение, полученное из простейших геометрических фигур: отрезков, дуг, кругов, прямоугольников и...
-
Необходимо исследовать зависимость влияния различных факторов на параметр, характеризующий производство. В качестве такого параметра было выбрано...
-
Начинать следует с определения структуры таблицы, соответствующей предметной области, т. е. с определения полей, которые надо включить в таблицу, типов...
-
Особенности сканирования изображения - Экономическая информатика
Качество сканированного изображения определяется многими факторами. Среди них - тип сканируемого оригинала, технические возможности сканера, квалификация...
-
- рисуем графический примитив, например, эллипс у рыбки; - накладываем сверху на эллипс другой графический объект так, чтобы он закрывал часть эллипса; -...
-
1. Какой математической операции нет в Delphi? 2. Как изменить порядок выполнения операций Delphi? 3. В каком порядке выполняются операции одного...
-
Запуск модели, Графики и диаграммы - Построение модели сердца
Щелкнув на кнопке запуска модели, после компиляции откроется окно презентации эксперимента. Запустив эксперимент, увидим структуру активного объекта:...
-
Форматы графических данных В компьютерной графике применяют, по меньшей мере, три десятка форматов файлов для хранения изображений. Но лишь часть из них...
-
Для оценки возможности выполнения проекта имеющимся в распоряжении разработчика штатным составом исполнителей, нужно рассчитать их среднее количество,...
-
Как мы уже говорили в лекциях, хранилище Windows Azure, помимо прочего, подходит для хранения реляционных данных, для этого используются возможности...
-
Каждый из видов графики имеет свои достоинства и недостатки, следует отметить определенную "зеркальность" их достоинств и недостатков. Среди достоинств...
-
- замечания, нужно запомнить. Знакомство со средой DELPHI Для загрузки Delphi нужно запустить файл Delphi32.exe из папки Bin каталога Delphi7. Можно...
-
Первая программа - движение слева направо Просмотрите код Unit1.pas для нашего примера: Unit Unit1; Interface Uses Windows, Messages, SysUtils, Variants,...
-
Разрезаем изображения - Создание сайта
В последнее время весьма актуальной задачей, стоящей перед Web-дизайнерами является разработка интерактивной графики. Одной из разновидностей такой...
Особенности редактирования графических данных в Microsoft Visual Basic, Построение изображений указателем мыши в Microsoft Visual Basic - Программирование графики в Microsoft Visual Basic