Как сделать программу в visual basic

Добавил пользователь Алексей Ф.
Обновлено: 04.10.2024

Разработка программ на Visual Basic

Как создать программу на Visual Basic ? Как и любую другую на каком угодно языке.

1. Постановка задачи.
Продумать, что должна делать программа, какие данные для неё потребуются, как эти данные в программу попадут, как они будут обрабатываться и в каком виде выводиться.
2. Проектирование интерфейса.
Означает помещение на форму нужных управляющих элементов, меток, кнопок, изображений и т.п. Этот этап создает внешний вид программы.
3. Составление программного кода.
Означает реализацию поставленной задачи при помощи языка программирования. Фактически, обеспечение связанного взаимодействия всех элементов интерфейса: кнопок, меток и т.д.
4. Отладка программы.
Этот этап часто может занимать всего больше времени. В действительности означает тщательную проверку работы программы во всех предусмотренных (и непредусмотренных) ситуациях. Требует возврата к третьему и даже зачастую ко второму этапу для обеспечения работы программы, так, как это задумывалось в первом.

Итак, рассмотрим создание простых программ на языке программирования Visual Basic (VB) .
Предложенные программы прошли обкатку в средах программирования VB5 и VB6 . Для их использования в средах VB2005 и выше требуются минимальные переделки типа : свойство будет называться не Caption , а Text . (Фирма Microsoft так быстро клепает несовместимые программные среды, что за ней очень сложно угнаться, тем более в обучении программированию.)

Общие пояснения
Сравни картинки
Цифровые часы
Угадайка
Ахил и черепаха
Совершенные числа
Выбери любимый цвет
Проверь реакцию
Выбор файла

В процессе обучения большинство программ пишется для экспериментальных целей. Это означает, что во время эксперимента уясняется работа какой либо функции, программной конструкции или проверяется возможность и особенности вывода той или иной информации. Но программирование в конечном смысле это не самоцель, а инструмент для использования во благо человека.
При отдаче приоритета этапу постановки задачи, нужно признаться, что все остальные тоже имеют свое значение. Ненадлежащая оценка важности каждого наносит серьезный ущерб программе.
Неудобный, запутанный, непонятный интерфейс это огромный минус программы. Очень часто отказываются от программы из-за того, что с ней неудобно работать, пусть даже она выполняет полезные вещи.
Создание программного кода это отдельная песня. Серьезные авторитеты давно ломают копья в попытке отнести его к творческому процессу или обыкновенному применению инструмента - языка программирования. На мой взгляд, там где инструмент можно применить тремя, пятью, двадцатью способами, что очень часто встречается в программировании, значит это не вульгарное кодирование, а на самом деле что то другое. В конечном счете именно программный код решает поставленную программе задачу, а значит, если он делает это быстро и качественно, значит программист-кодировщик справился с поставленной перед ним задачей.
Тот кто писал программы, знает, что, на первый взгляд безупречный код, при его выполнении, то есть во время работы программы, может начать выделывать странные вещи. Грубые ошибки выявляются еще до запуска программы. Программисты шутят: если при первой компиляции программы не выявилось ошибок, пусть системщик проверит компилятор. Но есть еще и логические ошибки, когда программа что то считает, и что то выдает, но потом оказывается, что считала и выдавала она совсем не то.
Отладка программы - серьезная вещь. Не зря фирмы платят за это деньги специальным людям. Программист исходя из своего, как сейчас любят говорить менталитета, никогда не сделает это так, как простой пользователь. Мой опыт программиста невелик и то, программа, работающая не один год вдруг отказалась работать из за того, что в последней строке файла данных забыли при вводе нажать Enter.
Итак разрешите представить на ваш суд учебные программы на языке Visual Basic. Исходя из вышесказанного, в каждом проекте представлена последовательность действий по созданию программного продукта.

Чтобы научиться программировать нужно писать программы. Вначале они могут быть самыми простыми.

Это очень простая программа. Но, однако же, демонстрирует алгоритмическую структуру ветвление.

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

Помести элемент на форму Измени его свойства Двойной щелчок мыши : введи код.
Image 1 Stretch = True
Picture = Первая из картинок
Image 2 Stretch = True
Picture = Вторая из картинок
Command Button 1 Caption = Сколько различий имеют картинки KolRaz=3
N=Val(InputBox(" Введите количество различий на картинк а х ")
If KolRaz=N Then MsgBox(" Правильно . ")
Else MsgBox(" Вы ошиблись . ")
End If

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

Это совсем простая программа. Она демонстрирует использование невидимого элемента управления - таймера и системной переменной Time$ .


Программа выводит цифровые часы на фоне выбранного вами изображения.
Обратите внимание на размер и цвет цифр часов и изображения фона. Для лучшей читаемости цифры на фоне должны выглядеть контрастно.
С точки зрения улучшения программы можно выполнить следующее.
- Растянуть изображение на весь экран, включив свойство формы WindowState = Maximize.
- Поместить на форму маленькую кнопочку
для растягивания картинки на весь экран со следующим кодом
Image1.Width = Form1.Width
Image1.Height = Form1.Height
(но можно это сделать и без кнопочки)
- Заставить программу показывать часы в разных местах экрана, и выводить их
по-другому, чтобы исключить моргание.

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

Помести элемент на форму Измени его свойства Двойной щелчок мыши : введи код.
Image 1 Stretch = True
Picture = Выбрать фоновое изображение
Timer 1 Interval = 1000 Label1.Caption = TimeS
Label 1 Font ?
BackStyle = Transparant
Caption = ""
Command Button 1 Caption=Max Image1.Width = Form1.Width
Image1.Height = Form1.Height
Form 1 (помещать не надо) WindowState=Maximize


Усовершенствованна я программа выглядит уже совсем по другому. С хорошим фоном и с доделками не стыдно и на рабочий стол поставить.

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


Компьютер загадывает число от 0 до 100.
Нужно угадать его, вводя числа. Компьютер после каждого ввода выдает подсказку о том: больше введенное число, чем загаданное или меньше.
Возможные улучшения.
- Убрать Rem из первой процедуры, чтобы подсмотреть число, загаданное компьютером;
- доработать интерфейс (вид) программы;
- выводить на форму введенное число или все введенные;
- считать число попыток, за которые число будет угадано.

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

Помести элемент на форму Измени его свойства Двойной щелчок мыши : введи код.
Label 1 Caption = Угадай число Font ?
Label 2 Caption = ""
Font ?
Label 3 Caption = ""
Font ?
Command Button 1 Caption = Загадать число В левом верхнем списке выбрать элемент General и объявить целочисленную переменную A .
Dim A As Integer
Rem Дальше код самой процедуры
Randomize (Timer)
A = Int(Rnd * 100)
Rem Label3.Caption = Str(A)
Command Button 2 Caption = Загадать число B = Val(InputBox("Введи число"))
If A B Then Label2.Caption = "Больше"
If A = B Then MsgBox ("Молодец ! Угадал ! ")
Command Button 3 Caption = Выход End

Это, дошедшая до нас из древности, простая арифметическая задача об Ахилле и черепахе.
Ахилл увидел черепаху, которая находилась от него в 100 шагах, и решил ее догнать. Ахилл движется в 10 раз быстрее черепахи. На каком расстоянии от начала погони он ее настигнет, считая, что двигаются они по одной линии ?
Философы древности утверждали, что никогда. Как бы близко он к ней ни приближался, черепаха все равно будет уходить вперед.
Ну у древних греков компьютера не было, а мы в два счета это расстояние определим. Кстати, это одно из замечательных чисел. Чем оно замечательно? Посчитай и увидишь!


Договоримся, что Ахил шел со скоростью 1000 шагов в час. Будем измерять путь Ахила и черепахи каждую секунду, и сравнивать пройденные ими пути.
Как только их пути сравняются, значит он ее догнал.

Поле для эксперимента.
- Проверьте работу программы на других скоростях;
- Измените типы вычисляемых значений;
- Попытайтесь определить почему результаты вычислений отличаются.

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

Помести элемент на форму Измени его свойства Двойной щелчок мыши : введи код.
Label 1 Caption en-us">" Font ?
Label 2 Caption en-us">"
Font ?
Label 3 Caption en-us">"
Font ?
Label 4 Caption en-us">" Font ?
Text1 1000
Text2 100
Text3 Очистить поле
Command Button 1 Caption = Найти расстояние В левом верхнем списке выб ерем элемент General и объяви м переменн ые.
Dim Sa As Single
Dim Sch As Double
Rem Дальше код самой процедуры
Sa = 0
Sch = 100
While Sa Sch = Sch + Val(Text2.Text) / 3600
Sa = Sa + Val(Text1.Text) / 3600
Wend
Text3.Text = Str(Sch)
Command Button 2 Caption = Выход End

П рограмма предназначена для нахождения совершенных чисел.
Совершенным называется число, которое равно сумме своих делителей, кроме самого числа. Греки знали четыре таких числа. Данная программа позволяет их найти.

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

Х отя это очень простая программа, но она демонстрирует использование в программе стандартного диалога WINDOWS . В программах очень часто используются эти диалоговые панели. В данном случае мы выберем цвет, который нам нравится. Программа выводит число, которое кодирует данный цвет.


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

Поле для экспериментов.
- Разложить число, которое является суммой трех составляющих : красного, зеленого и синего и найти соответствующую интенсивность каждого;
- Найти какой нибудь психологический тест по цветовым пристрастиям (например Люшера) и, взяв оттуда информацию, выдать выбирающему цвет его психологический портрет.

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

Помести элемент на форму Измени его свойства Двойной щелчок мыши : введи код.
Label 1 Caption = Мой любимый цвет, Font ?
Label 2 Caption = Твой цвет - это число, Font ?
Sape
TextBox Text - Очистить
Command Button Caption = Выбор цвета cd MyDialog.ShowColor
Form1.Shape1.FillColor = cdMyDialog.Color
Text1.Text = cdMyDialog.Color

Э то уже не очень простая программа. В ней мы используем невидимый элемент управления - Timer . Элемент управления - геометрическая фигура. И, не пугайтесь, функцию аппаратно программного интерфейса (API) GetTickCount . Функция после своего вызова возвращает значение равное количеству миллисекунд прошедших с момента запуска операционной системы. Обращаясь к ней, мы довольно точно можем вычислять временные промежутки.
Лирическое отступление. Пренебрежительное отношение к Visual Basic заканчивается, как только программист начинает использовать в своих программах всю мощь функций API операционной системы. Я согласен, что полноценную динамичную игрушку на VB написать сложно. Вам все равно придется обращаться к DirectX или OpenGL . Из VB это делать нерационально. Все остальные программы можно смело писать в среде VB , если вы на ТЫ с API . Смотрите, как это совершенно запросто делает элементарная программа.


После запуска программа показывает вам черный круг и предлагает нажать кнопку старта. Данная кнопка задает случайную выдержку времени истечение которой, просигнализирует красным цветом индикатора. После превращения индикатора из черного в красный начинается отсчет времени, а вы должны как можно быстрее нажать на кнопку Стоп . Отсчет времени прекращается и вы видите время своей реакции на сигнал.
Возможные улучшения.
- Поле для экспериментов с этой программой просто безгранично. Вы можете построить график измерений вашей реакции.
- Можете выводить кнопку Стоп в разных местах. Заставить испытуемого нажимать несколько кнопок, и т.д.

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

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


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

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

Дополнение : Увеличив размер формы и поместив на нее элемент управления Image , можно превратить модуль выбора файла в программу просмотра изображений.

If UCase(Right(Text2.Text, 3)) = "JPG" Then Image1.Picture = LoadPicture(Text2.Text)
Строчка проверяет расширение файла и если это файл изображения загружает его для просмотра.

В процессе создания даже таких простых проектов 3 стадии создания программ на VB прочно закладываются в память.

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

Все коды использовались в среде программирования Microsoft Visual Basic v6.0.

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

Пароль на запуск программы

Далее идет очень полезный код, это пароль на запуск программы, ну или для чего-нибудь другого. Открывайте стандартный проект щелкните в пустом месте (загрузка формы программы) и вставляйте следующее:

Где, 12345 это пароль на запуск программы. Но этот код можно использовать, где только захотите.

Рисование на форме

Дальше идет такая мелкая программа как мини Paint, т.е. рисование, причем на самой форме. Откройте стандартный проект, щелкните в пустом месте и вставьте следующий код:

Цвет можете менять с помощью параметра QBColor(0), т.е. вместо 0 поставьте другую цифру.

Перезагрузка компьютера

Для того чтобы перезагрузить компьютер: поместите кнопку и вставьте следующий код:

Запуск программы в единственном экземпляре

Выключение компьютера

Для того чтобы выключить компьютер можно использовать следующий код:

Завершение любого процесса

Для того чтобы завершить процесс можете использовать следующий код:

Где, вместо ICQlite.exe может быть любой процесс.

Сколько работает компьютер

Ниже показан пример того, как можно определить время работы компьютера. Данный способ основан на использование библиотеки kernel32, поэтому в самом начале кода формы подключите данную DLL.

Мы рассмотрели простые функции, которые можно использовать практически везде. Теперь рассмотрим более серьезные примеры, и они Вам могут очень сильно помочь написать свои крупные проекты.

Примеры работы с папками

Удалить каталог

Создать каталог

Список всех папок с под папками

На форму добавляем 2 текстовых поля и кнопку, имя первого текстового поля: StartText, имя второго текстового поля OutText. Свойство Multiline = true, имя кнопки = CmdStart

Далее пишем код в кнопке:

Теперь запускаем программу, в текстовом поле StartText пишем: C:\windows, и жмем на кнопку.

Размер каталога

Примеры работы с файлами

Копировать

Допустим, у нас есть файл с именем 1.txt в папке C:\1\ , а нам нужно скопировать его в C:\2\ для этого пишем следующий код:

Примечание! Если в каталоге 2 уже находится файл с именем 1.txt, то он будет заменен на 1.txt из каталога 1.

Можно использовать и функции API:

Удаление

Например, мы хотим удалить файл 1.txt из корня диска C:\

Перемещение

Можно, например, переместит и так:

Но лучше так (через API):

Переименование

Для того чтобы переименовать файл 1.txt находящийся в C:\ на 2.txt можно использовать следующий код:

Определить размер файла

Размер файла можно определить двумя путями:

Если файл можно открыть функцией OPEN, то можно воспользоваться функцией LOF

Или использовать функцию FileLen

Скрыть часы программно

Добавьте 2 кнопки и вставляйте код:

Добавить иконку в трей

Добавляем модуль, вставляем в него код:

Чтобы использовать вставьте в код формы:

Блокируем кнопку пуск

Добавляем 2 кнопки и вставляем код:

Считываем параметры из INI файла

Программа подключается к FTP, а в ини файле прописаны параметры — сервер, логин, порт, пароль.

С начало создаем INI файл:

Его необходимо поместите в папку с программой. Далее, вставляем в модуль:

Затем вставляем в код формы:

Список запущенных процессов

Добавляем Listbox и 1 кнопку, вставляем следующий код:

Помещение программы в автозагрузку

Для того чтобы программа загружалась вместе с Windows, как и другие некоторые программы, можно использовать реестр:

Добавьте 2 кнопки и следующий код:

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

Для начала более серьезный способ (сделайте на всякий случай резервную копию реестра).

Ну и простой способ.

Скрываем панель задач

Добавляем 2 кнопки и вставляем код:

Разархивировать архив RAR

Для того чтобы разархивировать архив RAR можно использовать следующий код:

Сколько оперативной памяти в компьютере

Добавьте одну кнопку и вставляйте следующий код:

Скрыть значки рабочего стола

Это делается следующим образом. Добавите 2 кнопки и вставляйте следующий код:

С помощью кнопки Command1 значки скрываются, Command2 — появляются.

На этом у меня все, надеюсь, вышеперечисленные примеры будут Вам полезны, пока!


Эта статья предназначена для тех, кто желает научиться программировать в VBA Excel с нуля. Вы увидите, как это работает, и убедитесь, что не все так сложно, как кажется с первого взгляда. Свою первую программу вы напишите за 7 простых шагов.

Знакомство с редактором VBA


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


Первая программа на VBA Excel

Добавляем на стандартный модуль шаблон процедуры – строки ее начала и завершения, между которыми мы и будем писать свою первую программу (процедуру, подпрограмму).


В результате откроется окно добавления шаблона процедуры (Sub).



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

  1. Вставьте внутрь шаблона процедуры следующую строку: MsgBox "Привет" .


Работа с переменными

Основная задача этой темы – научиться читать VB программы. Что под этим подразумевается? Знать точку входа в программу, последовательность ее выполнения, уметь читать программу, соблюдая терминологию программиста.

Терминов в VB не так уж и много – переменная, функция, объект, класс, метод, свойство, коллекция, вызывается, объявляется, присваивается, описывается, создается. Но из них нужно уметь правильно составлять предложения. При этом можно излагать суть программного кода в произвольной интерпретации, но, не выходя при этом за рамки потери смысла. Чтобы не было так. Преподаватель задает студенту вопрос: “ Как работает холодильник?”. Студент отвечает: “Уууууу…”.

Ну, а теперь по порядку. Что такое программирование? Это описание данных и действий над ними. В процедурном или функциональном программировании данные – это переменные; действия – процедуры, функции, операции.

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

Процедуры и функции могут иметь входные параметры (переменные), которые обрамляются скобками. Даже при отсутствии входных параметров скобки около имени функции обычно есть. Это позволяет ее отличить от переменных.

VB относится к языкам ООП, в которых данные (свойства) и действия (методы) объединяются (инкапсулируются) в объектах. Объекты могут реагировать на внутренние события (например, деление на ноль) и внешние (передвижение курсора, click мышкой и др.). Т.е., кроме обычных процедур есть процедуры обработки событий, которые могут вызываться через действия пользователя. Здесь в качестве посредника между действиями пользователя и процедурой выступает программная система, которая в зависимости от тех или иных действий вызывает соответствующую процедуру.

Объект – это представитель класса. В классе описываются свойства и методы, через объект они могут быть реализованы. При создании объекта (через оператор NEW) мы можем обращаться к ним. При обращении к методу или свойству обычно через точку указывается имя объекта, к которому они относятся.

Аналогом класса и объекта в традиционном программировании есть, соответственно – типы и переменные. Что между ними общего? С помощью типа (класса) можно создавать множество переменных (объектов). Над переменными (объектами) можно выполнять только определенные действия (операции и методы), которые прописаны в API программной системы (классе).

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

Начните новый проект в Visual Studio. В окне New Project выберите прототип VB проекта Windows Forms Application.


Программирование в VB делится на 2 этапа – визуального программирования и создания исходного кода.

На первом шаге мы будем визуально программировать в VB. Изначально все должно выглядеть вот так:

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

Справа (сверху) находится окно проводника, в нем указывается список файлов, используемых в проекте. Справа (внизу) находится окно свойств, если вы ничего не меняли, то это должны быть свойства текущей формы. У каждого элемента свои свойства, основные из них: name – имя элемента (используется в коде программы) и text – надпись на элементе.

Перенесите на форму элементы (TextBox и две кнопки Button) и измените свойства Text всех элементов, включая форму (см. рисунок). Cвойства name (Form1, TextBox1, Command1 и Command2), а также другие оставьте без изменений. Теперь ваша форма должна выглядеть так:


Добавьте в окне код:

Обратите внимание, что имя процедуры обработки событий состоит из 2-х частей, разделенных знаком подчеркивания (_) – свойство name элемента и наименования события. Свойство name элемента есть ключ (идентификатор) для обеспечения взаимосвязи между данными и действиями. С подобным мы встречались при написании программы на языках VLISP и DCL, где данные были отделены от функций. Данные (свойства элементов) и действия (процедуры обработки событий, обычные процедуры, функции) на VB также описываются в отдельных файлах. В отличии от языка DCL на VB описание свойств элементов формируется в файле автоматически – на этапе визуального программирования.

Модифицируйте программу, чтобы текст воспринимался как пароль. В окне свойств поставьте для элемента TextBox1 свойство PasswordChar равным звездочке (*).


Попробуйте прочитать код, соблюдая терминологию.

Существует несколько разновидностей диалоговых окон: нестандартные, встроенные и стандартные. Первые создаются разработчиками, встроенные вызываются функциями InputBox или Msgbox и стандартные окна вызываются методами элементов управления ColorDialog, FontDialog и др.

Создадим программу, которая меняет цвет и шрифт в текстовом окне с помощью стандартных диалоговых окон:

Создайте форму и перенесите на нее две кнопки (Button) и метку (Label). Затем перенесите элементы диалога (объекты ColorDialog и FontDialog) в любое место формы, они отобразятся в нижней части экрана (при запуске программы эти элементы не будут отображаться).

Установите свойства элементов управления в соответствии с таблицей:

Скопируйте листинг программного кода и протестируйте программу.

Ознакомьтесь с описанием программы.

Оператор With …..End With используется для того, чтобы не повторять имя элемента управления при определении его свойств или методов. Для перехвата ошибки используется оператор On Error GoTo, который обычно располагается перед вызовом метода, выполнение которого может привести к ошибке. Этот оператор переправляет действие к установленной в коде метке (ErrorLabel)

Стандартное диалоговое окно вызывается методом ShowDialog элемента dlgColor (dlgFont). Свойство Color (Font) элемента lblExample инициализируется при интерактивном его выборе в диалоговом окне.

Контрольный вопрос. Соблюдая терминологию прочитайте фрагменты VB кода:

Создадим простейший графический редактор, позволяющий рисовать (стирать) линии с помощью нажатия левой (правой) кнопки мыши.


Единственным элементом приложения есть сама форма. Установите основные свойства формы в соответствии с таблицей:

Скопируйте листинг программного кода в описание класса frmPaint:

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

В приложении обрабатываются следующие события:

  • MouseDown – нажата любая кнопка;
  • MouseUp – отпущена любая нажатая кнопка;
  • MouseMove – указатель мыши переместился.

Событие MouseMove вызывается циклично, пока двигается курсор. В событии MouseDown и MouseUp булева переменная IsDraw меняет значение и этим отключает (включает) режим рисования. Рисование выполняется с помощью метода DrawLine объекта MyG.

В каждую из процедур обработки событий передаются параметры, которые используются для получения а иногда для установки соответствующей информации внутри обработчика события. Так, в процедуре события MouseMove такими параметром есть объект e, свойства которого определяют текущее положение курсора (e.X, e.Y).

В событие MouseDown передается объект e, в свойстве которого (e.Button) сохраняется свойство-константа нажатой клавиши. Обратите внимание на глубину иерархии обращения к этой константе. При обращении к какому-либо свойству или методу указывается вся цепочка вхождений представителей объектов одних классов в описание других классов (см. Агрегация). Такая цепочка вхождений отражает фрагмент организации, так называемой объектной модели программной системы.

Для рисования и стирания используются объекты-карандаши (Pen1 и Pen2), разные по цвету и толщине линий. Стирание реализуется карандашом цвета фона – свойство BackColor объекта frmPaint. Обратите внимание, что около этого свойства имя объекта не указано, поскольку к свойству обращаются в пределах описания класса frmPaint.

Контрольные вопросы:

  • В каком случае переменную можно назвать параметром, объектом или свойством?
  • Соблюдая терминологию прочитайте фрагменты VB кода:

Постановка задачи.


Порядок выполнения работы.

Для отображения текущего результата, а также секундомера будут предусмотрены метки (элементы Label). Для мишени будет использован элемент Picture. Для изображения мишени загрузите картинку в свойство Image элемента Picture.

Читайте также: