70552

Программирование: Конспект лекций

Конспект

Информатика, кибернетика и программирование

Обычно BASIC ассоциируется с простым в освоении и использовании средством программирования. Действительно, этот язык долго использовался в качестве учебного языка при изучении основ программирования.

Русский

2014-10-22

7.46 MB

35 чел.

екции по VBA

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

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

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

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

«УТВЕРЖДЕНО»

______________________

«_____»__________201__г.

ЛЕКЦИИ

по дисциплине «Программирование»

по профилю

«МАТЕМАТИКА И ИНФОРМАТИКА»

«ФИЗИКА И ИНФОРМАТИКА»

Квалификация (степень) выпускника- бакалавр

Форма обучения

Очная

Грозный- 2012 г.  


Модуль 1. Введение в Visual
Basic

Лекция 1. История Visual Basic, назначение среды программирования Visual Basic

Обычно BASIC ассоциируется с простым в освоении и использовании средством программирования. Действительно, этот язык долго использовался в качестве учебного языка при изучении основ программирования. Это было заложено в название BASICBeginners All-purpose Symbolic Instructional Code, то есть многоцелевой код символьных инструкций для начинающих.

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

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

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

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

Одним из основных преимуществ языка Visual Basic является возможность очень быстрого создания работоспособных приложений. С появлением версии Visual Basic 6.0 сбылась мечта программиста — простые приложения можно создавать, практически не прибегая к написанию программного кода, а в сложных приложениях рутинный процесс его создания сведен к минимуму. Мастера, включенные в состав Visual Basic, дают возможность быстро создавать прототипы приложений, готовых для обсуждения и согласования с заказчиком. Данная реализация языка ставит его практически в один ряд с такими средствами разработки, как Visual C++, Delphi и другими.

Простота и мощность языка Visual Basic  позволили сделать его встроенным языком для приложений Microsoft Office. Многие независимые разработчики, например, известная своими программами в области бухгалтерского учета фирма "1C", приобретают лицензии на использование языка Visual Basic в качестве внутреннего языка своих приложений.

Фирма Microsoft интегрировала также специальную версию Visual Basic, известную под именем Visual Basic for Application (VBA) во все компоненты пакета Microsoft Office, Microsoft Project и некоторые другие программы. Кроме того, фирма Microsoft продала лицензию на VBA очень многим фирмам — производителям программного обеспечения. Поэтому в настоящее время Basic уже не считается учебным языком — знание Visual Basic и его диалектов (VBA, VBScript) становится необходимостью для современного программиста любого уровня. (Дополнительно: см., например, [4], [6]).


Модуль 1. Введение в Visual
Basic

Лекция 2. Основные понятия объектно-ориентированного визуального программирования

В Visual Basic реализована модель объектно-ориентированного событийно - управляемого программирования. Основным понятием в объектно-ориентированном программировании является  объект.

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

  1.  Свойства объекта (Properties) – характеристики объекта, определяющие его внешний вид и выполняемые им функции. Свойства задаются при проектировании (в окне Свойства объекта (Properties)) или во время выполнения приложения (команда объект.свойство = значение свойства в программном коде). Изменяя свойства, мы можем воздействовать на эти объекты и, тем самым, использовать их для назначенной цели. В Visual Basic свойства большинства объектов представлены в окне свойств (Properties) и доступны для изменений. Свойства объектов можно разбить на несколько групп. Одни из свойств управляют внешним видом самих объектов - высота Height, ширина Width, цвет BackColor и ForeColor, шрифт надписи и т.д. Другие свойства управляют расположением объектов на окне форм: Тор - расстояние от верхнего края формы и Left - расстояние от левого края, взаимным расположением на форме и т.д. Наконец есть группа свойств, предназначенных для воздействия одних объектов на другие. Так, например свойство Picture объекта PictureBox позволяет поместить в рамку рисунок из выбранного файла.

Свойства, общие для всех объектов:

Name: имя объекта при обращении к нему в программе

Enabled: доступность для пользователя

Visible: видимость на экране

Left: расстояние от левой границы экрана (формы) до левой границы объекта

Top: расстояние от верхней границы экрана (формы) до верхней границы объекта

Height, Width: высота и ширина объекта

По умолчанию в среде VB расстояния и размеры измеряются в твипах
(1 твип 0,018 мм).

  1.  События объекта (Events) – действия, на которые объект реагирует. Эти события могут быть порождены операционной системой (системные события) или действиями пользователя. Реакция на происшедшее событие описывается программистом в процедуре обработки события с помощью операторов языка в окне Редактора кода.

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

Общий вид процедуры обработки события:

Sub Объект_Событие(параметры)

 Действия (команды языка VB)

End Sub 

Параметры – список переменных с указанием типа. При вызове процедуры параметры получают конкретные значения.

Справа в окне Редактора кода приведен пример процедуры обработки события Click (в  этой процедуре параметры не используются).  

 

  1.  Методы объекта (Methods) – набор действий, которые можно выполнить с объектом. С точки зрения программиста метод – это стандартная процедура, связанная с объектом.
    В программном коде используют команду
    объект.метод (аргументы): метод Move (переместить объект), Show (сделать видимым объект), Print (вывод информации в объект), SetFocus (передать управление объекту). Например: Text1. SetFocus (курсор будет помещен в текстовое поле).

Фрагмент программного кода:

Private Sub command1_Click()

   End

End Sub

Private Sub HScroll1_Scroll()

HScroll1_Change

End Sub

Private Sub VScroll1_Change()

Shape1.FillStyle = VScroll1.Value

Label3.Caption = VScroll1.Value

End Sub


Модуль 1. Введение в Visual
Basic

Лекция 3. Среда Visual Basic 6.0

  1.  

Начало работы: среда Visual Basic 6.0 может быть запущена из Главного меню (как и другие приложения Windows). Появляется окно с тремя вкладками: Новое (New), Существующее (Existing), Прошлое (Recent). С помощью окна можно создать новый проект или открыть существующий.

  1.  Создание нового проекта:

New → Standard EXE  → Открыть.

  1.  Открыть существующий проект:
    Existing → Открыть нужную папку → Выбрать нужный проект → Открыть
    .

Проект – приложение на стадии разработки.

  1.  Интерфейс

Среда Visual Basic является интегрированной: она предоставляет разработчику широкие возможности конструирования графического интерфейса приложения, редактирования методов и свойств объектов, отладки, тестирования и выполнения проекта.

Основными элементами среды являются:

А) Главное окно среды напоминает окна Windows: есть строка заголовка, главное меню и панель инструментов.

Заголовок состоит из названия системы программирования Microsoft Visual Basic, левее этих слов расположено название проекта - Project1. Это название Visual Basic присвоил автоматически, его можно заменить каким-либо более осмысленным. В правой части заголовка надпись [design] - дизайн - конструирование, разработка, это слово отражает этап работы над проектом. Другие возможные этапы работы: [run] - выполнение и [break] - прерывание. Строка меню и панель инструментов во многом совпадают с меню и панелью Windows, однако, в них имеются меню и инструменты, которые обеспечивают доступ к специальным средствам Visual Basic.

Строка меню состоит из заголовков меню, которые содержат все команды, необходимые при работе с Visual Basic. Меню File, View, Edit, Window и Help являются характерными для Windows и приложений Windows, но имеют ряд особенностей.

  •  File - Файл - содержит команды управления файлами проекта,
  •  Edit - Правка - применяется при редактировании текста программ,
  •  View - Вид - позволяет изменять конфигурацию интегрированной среды. В меню Вид  имеется команда Toolbars - Панели инструментов. Эта команда вызывает диалоговое окно со списком дополнительных панелей инструментов, каждая из которых может быть помещена в интегрированную среду.
  •  Project - Проект - содержит команды управления компонентами проекта и используется на этапе конструирования.
  •  Format - Формат - позволяет изменять размеры объектов, размещенных в окне форм и их взаимное расположение в этом окне.
  •  Debug - Отладка - применяется при внесении исправлений в код программы и контроле над ходом выполнения процедур.
  •  Tools – Инструменты - содержит инструменты для автоматизации написания текстов программ.
  •  Add-Ins - Подключить - позволяет использовать дополнительные ресурсы.
  •  Последнее меню в строке - Help - Помощь.

Панель инструментов Toolbar  значительно ускоряет и упрощает доступ к командам меню Visual Basic.

Б) Окно конструктора форм: В серединной части экрана расположено окно проектов, озаглавленное Project1 - Form1 (Form). Оно является основным во время создания интерфейса будущего приложения. Внутри этого окна размещено окно дизайнера (конструктора) форм, чаще его называют просто окном форм. Его название Form1, автоматически присваивается Visual Basic, и должно быть впоследствии изменено. На этапе конструирования проекта на поверхности окна форм размещают необходимое количество объектов, предназначенных для управления приложением. Поверхность окна форм в режиме конструирования покрыта точками. Эти точки являются узлами координатной сетки и служат для облегчения размещения объектов на форме.

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

  •  Дважды щелкнув мышью на кнопке панели. При этом выбранный элемент помещается в  центр окна форм, а далее его можно перетащить на нужное место;
  •  Выбрать (щелкнув мышью) кнопку панели, затем переместить курсор мыши на нужное место окна форм, и, удерживая левую клавишу мыши нажатой (при этом появится «резиновый» прямоугольник), отметить область, в которую будет помещен создаваемый объект.

Для удаления элемента с формы используют стандартные команды удаления объектов Windows, например, с помощью контекстного меню.

Г) Окно Свойства объекта (Properties): используется, чтобы задать свойства формы и размещенных на ней объектов на этапе проектирования. Это окно содержит перечень тех свойств объекта, которые пользователь может изменить. Окно выполнено в виде таблицы, каждая строка которой содержит два поля. В левом поле записано название свойства, в правом - значение свойства. Значения свойств можно изменять непосредственно в окне Properties. Способы изменения свойств объекта:

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

Замечание: кроме визуальных способов изменения свойств, имеется менее наглядная, но иногда необходимая возможность программного присвоения значений свойств объектов в коде (тексте) процедур Visual Basic.

Д) Окно Проводник проекта (Project Explorer): позволяет анализировать структуру проекта и его состав. Приложение Visual Basic на этапе разработки состоит из нескольких файлов, которые все вместе составляют проект. В самом простом случае этих файлов два: для хранения формы и самого проекта. По мере усложнения проекта, количество файлов увеличивается. Проводник демонстрирует иерархическую структуру проекта. Окно проводника содержит три кнопки - View Code - показать окно кодов, View Object - показать окно форм и Toggle Folders - открыть/закрыть папку, содержащую список объектов.

Е) Еще одно окно - Code - окно Редактора кода в исходном состоянии среды не видно. Оно предназначено для создания и редактирования кода  программы и вызывается на экран по мере необходимости.

  1.  Операции с проектом
  2.  Создание проекта: команда File  New Project  выбрать Standard EXE  Ok
  3.  Добавить в проект форму: Project  Add Form  выбрать Form  Открыть
  4.  Удалить форму из проекта: в окне Проводник проекта выделить нужную форму
     Project  Remove
  5.  Сохранение проекта: команда File  Save Project As в отдельной папке сохранить файл формы и файл проекта
  6.  Выполнение проекта: команда Run  Start или F5
  7.  Закончить выполнение проекта: кнопка End на стандартной панели инструментов
  8.  Понятие проекта

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

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

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

Модуль проекта содержит код, описывающий связи между отдельными элементами проекта и определяющий порядок их выполнения. Хранится в файле с расширением vbp.

  1.  Этапы разработки приложения в среде Visual Basic
  2.  Создание интерфейса (этап проектирования)

На этом этапе необходимо сначала продумать ожидаемый алгоритм работы пользователя с будущим приложением, возможные события при работе приложения, порядок их возникновения. Кроме того, надо выявить будущих пользователей, максимально точно описать предъявляемые ими требования к проекту. Тогда можно приступать непосредственно к проектированию, но и здесь вопросов много:   какие меню понадобятся,  какого размера окно требуется для приложения, сколько всего будет окон, должен ли пользователь иметь возможность изменять размеры окна, какие элементы управления рационально использовать для решения задачи и как их разместить максимально удобно для пользователя?… В результате на форму с помощью мыши помещаются те или иные управляющие элементы, а в окне Properties задаются их свойства. После того как разработка интерфейса завершена, кнопки управления, поля и другие элементы, размещенные на форме, автоматически будут распознавать действия пользователя, такие, например, как движение мыши или щелчок ее кнопки.

  1.  Создание программного кода

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

Для создания или редактирования кода надо вызвать окно Редактора кода. Окно используется для размещения, просмотра и редактирования всех текстовых элементов программы - описания констант, переменных, массивов, процедур и пр.

  1.  Отладка, тестирование, компиляция

Для выполнения отладки (проверки правильности функционирования проекта и исправления найденных ошибок) в Visual Basic существует набор специальных инструментов, в первую очередь команды меню Debug. Отладка и тестирование – непременные этапы работы над любым проектом, особенно большим и сложным. Проект может функционировать лишь в среде Visual Basic. После его создания, отладки и тестирования выполняется компиляция: создается исполняемый модуль с расширением exe, независимый от среды Visual Basic. Так получается готовое приложение.


Лекция 4. Форма и основные элементы управления

  1.  Форма
  2.  Метка
  3.  Командная кнопка
  4.  Текстовое поле
  5.  Флажки, переключатели, фреймы
  6.  Списки
  7.  Полосы прокрутки 

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

  1.  Форма

Форма (Form) – контейнер, содержащий другие элементы управления, аналог окна Windows.

Некоторые свойства:

Name:  по умолчанию Form1

Caption: заголовок формы

BackColor: цвет фона

Picture: путь доступа к файлу, являющемуся фоном формы

WindowState: состояние окна (в виде пиктограммы, нормального размера, во весь экран)

BorderStyle: стиль обрамления формы, возможность изменять ее размеры, наличие кнопок управления окном

MaxButton, MinButton: определяют доступность кнопок развернуть, свернуть во время работы приложения  

StartUpPosition: задает расположение формы на экране при работе приложения

Некоторые события: Click, DblClick, ReSize (при изменении размера), Load, Unload (в момент загрузки/выгрузки формы из памяти), MouseDown,  MouseUp (нажатие/отпускание кнопки мыши).

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

Основное внимание при создании данного проекта уделим технологии создания кода.

Вызов окна Редактора кода:

  •  

выполнить двойной щелчок по объекту, для которого создаем процедуру. Ниже представлен текст в окне Code, образовавшийся в результате двойного щелчка по командной кнопке с именем Command1:

Первая строка  Option Explicit - служебная, она открывает раздел описаний. Следующая пара строк представляет собой заготовку процедуры, определяет ее начало и конец. Между этими двумя строчками размещают тело процедуры.

  •  командой View  Code. В окне кода можно выбрать из списка событий нужное (появится заготовка для процедуры) и набрать команды процедуры.

В нашем примере в окне Редактора кода выберем в левом списке объект Form, а в правом – событие Click и наберем три команды внутри появившейся заготовки процедуры.

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

  1.  Метка

Метка (Label) – элемент управления, применяемый для вывода информации. Другое название объекта  - этикетка.

Некоторые свойства: Name:  по умолчанию Label1

Caption: информация, выводимая в метку

BorderStyle: стиль обрамления

Alignment: выравнивание

Font: тип, размер шрифта

ForeColor: цвет шрифта

Некоторые события: Click, DblClick, Change (изменение содержимого)

Пример: после двойного щелчка по метке в ней появляется слово “Щелчок”, расположенное по центру. Для его написания использован полужирный курсив с подчеркиванием (проект «Метка»).

  1.  Командная кнопка

Командная кнопка (Command Button) – элемент, применяемый для интерактивного управления работой приложения.

Некоторые свойства:

Name:  по умолчанию Command1

Caption: надпись на кнопке

Picture: путь доступа к файлу с изображением, помещаемым на кнопку

Style: стиль оформления (Standart – на кнопке будет текст, заданный в свойстве Caption; Graphical - на кнопке будет изображение, заданное в свойстве Picture);  

Font: тип и размер шрифта

Некоторые события: Click

Пример: после щелчка по кнопке
у формы изменяется заголовок.

  1.  Текстовое поле

Текстовое поле (Text Box) – элемент управления, применяемый для ввода и вывода информации.

Некоторые свойства:

Name:  по умолчанию Text1

Text: содержимое текстового поля

Alignment: выравнивание;   Font: тип и размер шрифта;   ForeColor: цвет шрифта

MultiLine: многострочный текст

ScrollBar: наличие и вид полос прокрутки

PasswordChar: символ, заменяющий (скрывающий) вводимые в текстовое поле символы

Некоторые события: Click, DblClick, Change, KeyPress (нажатие клавиши)

Пример: после ввода в текстовое поле 5-го символа цвет шрифта станет красным

(проект «Текст»).

  1.  Флажки, переключатели, фреймы
  2.  Переключатели (Option Button): обычно образуют группу и помещаются внутри фрейма, обеспечивая для пользователя возможность выбора 1 из предложенных вариантов.

Некоторые свойства:

Name:  по умолчанию Option1

Caption, BackColor, Alignment, основное свойство Value: значения True/False

  1.  Флажки (Check Box): используются для размещения на форме данных, которые могут иметь одно из 2 значений. Если флажки образуют группу, то обеспечивают для пользователя возможность выбора нескольких вариантов из предложенных.

Некоторые свойства:

Name:  по умолчанию Check1

Value: значения 0 – сброшен, 1 – установлен, 2 – не доступен

  1.  Фрейм (рамка) – элемент управления, который служит контейнером для других элементов управления.

Некоторые свойства:

Name:  по умолчанию Frame1,    
Caption: надпись вверху рамки

BorderStyle: стиль обрамления (наличие рамки вокруг группы элементов)

Создание группы элементов:

  •  разместить на форме фрейм, установить для него необходимые свойства;
  •  поместить на форму элемент управления (переключатель, флажок и др.), установить его свойства, вырезать его в буфер обмена;

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

  1.  Списки
  2.  Обычный список (List Box)

Некоторые свойства:

Name: по умолчанию List1

ListCount: число элементов в списке  

ListIndex: номер выбранного элемента списка (нумерация начинается с 0). Если элемент не выбран, значение свойства равно –1.

List: символьный массив, хранящий все элементы списка

Text: значение выбранного элемента

Style: оформление списка (значения 0,1)

Sorted: сортировка элементов списка по возрастанию (свойство можно установить только при проектировании интерфейса).

Заполнение списка:

  1.  На этапе проектирования значения элементов вводятся в свойстве List (после каждого значения нажимается сочетание клавиш Ctrl +Inter)
  2.  Во время выполнения приложения используется метод AddItem:

For i=1 to 100

List1.AddItem i      ‘список заполняем числами от 1 до 100

Next i

Удаление элементов из списка:

  1.  Для очистки всего списка используется метод Clear (команда List1.Clear)
  2.  Для удаления элемента с указанным номером используется метод RemoveItem, например: List1. RemoveItem 5 (удаляется элемент списка с № 5) 

  1.  Комбинированный список (Combo Box)

Этот элемент позволяет выбирать данные из списка и добавлять новые элементы в текстовое поле списка (сочетает в себе список и текстовое поле).

Некоторые свойства:

Name:  по умолчанию Combo1, ListCount, ListIndex, List, Text, Style (0, 1, 2), Sorted

  1.  Полосы прокрутки 

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

Некоторые свойства:

Name:  по умолчанию VScroll1 (вертикальная), HScroll1 (горизонтальная)

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

Min, Max: устанавливают диапазон значений

SmallChange: величина перемещения бегунка при щелчке по стрелкам на краях полосы прокрутки

LargeChange: величина перемещения бегунка при щелчке по полосе прокрутки
(по умолчанию значение 1, рекомендуется выбирать равным 10 процентам от диапазона)

События: Scroll (возникает при перемещении бегунка на полосе прокрутки), Change (возникает после перемещения бегунка в момент отпускания кнопки мыши, после щелчка мыши по стрелке на краях полосы прокрутки, после щелчка мыши по полосе прокрутки).

Пример: проект «Скорость» демонстрирует удобный способ ввода данных во время работы приложения с помощью полосы прокрутки (при перемещении бегунка любым из указанных выше способов соответственно изменяется значение скорости).

Программный код содержит 3 процедуры обработки событий:


Лекция 5.

Модуль 3. Основные элементы программирования

1. Использование переменных для хранения информации

1.1 Переменные: имя, тип, способы объявления

1.2 Время жизни переменных:

1.3 Зона видимости переменных:

2. Числовые переменные. Арифметические операции. Математические функции

2.1 Арифметические операции

2.2 Математические функции

  1.  Использование переменных для хранения информации
    1.  Переменные: имя, тип, способы объявления
  2.  Имя: латинские и русские буквы, цифры, символ подчеркивания. Начинается с буквы. Максимально 255 символов.
  3.  Тип:

1) Числовые:

Byte: целые числа от 0 до 255

Integer: целые числа от -32768 до 32767

Long: длинные целые

Single: вещественные одинарной точности

Double: вещественные двойной точности

Currency: денежный формат (числа с фиксированной точкой)

2) Символьные:

String: переменной длины

String*n: фиксированной длины

3) Особые типы:

Boolean: логический тип; Date: тип дата/время

Object: объектный тип; Variant: стандартный тип (по умолчанию)

  1.  Объявление переменных:
  2.  Явное объявление (с помощью специального оператора Dim, Private, Static, Public): Dim имя переменной [As тип переменной]  Например: Dim f As Integer
  3.  Неявное объявление (с помощью специального символа %, &, !, #, @, $ после имени переменной): S% (тип Integer), Y# (тип Double)
    1.  Время жизни переменных:

По времени жизни переменные делятся на:

  1.  Динамические: существуют, пока выполняется породившая их процедура.
  2.  Статические: сохраняют свои значения после окончания работы процедуры. Их необходимо объявлять: Static имя переменной [As тип переменной]. Такие переменные часто используют для подсчета количества.
    1.  Зона видимости переменных:
  3.  Локальные:

А) локальные для процедуры: описываются внутри конкретной процедуры оператором Dim или Private. Такие переменные нельзя использовать из других процедур.

Б) локальные для формы: описываются в разделе общих объявлений General Declaration этой формы оператором Dim. Такие переменные можно использовать из всех процедур кода для данной формы.

  1.  Глобальные: описываются в разделе общих объявлений General Declaration программного модуля проекта (файл с расширением bas) оператором Public. Такие переменные можно использовать из всех процедур проекта.

Пример: Психологи утверждают, что для того, чтобы брак был счастливым, должна быть определенная разница в возрасте между женихом и невестой: возраст невесты должен быть равен половине возраста мужчины плюс семь, а возраст жениха – удвоенному возрасту невесты минус четырнадцать. Разработать приложение для определения подходящего возраста будущего супруга (проект «Счастливый брак»).

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

Option Explicit

'логические переменные, локальные для формы

Dim f1, f2 As Boolean

Private Sub Command1_Click()

'переменные, локальные для процедуры

Dim vg, vn As Byte

vg = Val(Text1.Text)

vn = Val(Text2.Text)

'вычисляем возраст жениха или невесты

If f1 = True Then

vn = vg / 2 + 7

Text2.Text = vn

Else

vg = vn * 2 - 14

Text1.Text = vg

End If

Text1.Enabled = True

Text2.Enabled = True

End Sub

2. Числовые переменные. Арифметические операции. Математические функции.

2.1 Арифметические операции (в порядке приоритета):

1) ^  - степень    2) -  смена знака  3) * /   умножение, деление

4) \   - целочисленное деление 5) MOD – остаток от целочисленного деления 6) + -

  •  Все арифметические операции записываются в одну строку.
  •  В десятичных дробях целая часть отделяется от дробной точкой.
  •  Знаки арифметических операций опускать нельзя.

Пример:

2.2 Математические функции:

ABS(x) - |x|       SQR(x) - x     FIX(X), CINT(x) – округление до целого

INT(x) – наибольшее целое число, не превосходящее x

SIN(x), COS(x), TAN(x) – тригонометрические функции

RND – генерирует произвольное число, большее 0 и меньшее 1.

  •  Аргументы всех функций пишутся в скобках.
  •  Аргументы тригонометрических функций задаются в радианах:
  •  Функции не являются самостоятельными командами языка.

Примеры:  Функция INT(9.7) возвращает 9, INT(-8.5) возвращает –9;

Функция SIN(17*3.141592/180) возвращает значение sin(17);

Функция INT(RND*100)+1 возвращает произвольные целые числа в диапазоне от 1 до 100


Лекция 6.

Модуль 3. Основные элементы программирования

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

Примеры

Встроенные константы Visual Basic. Ввод и отображение информации с помощью диалоговых окон

4.1 Встроенные константы Visual Basic

4.2 Диалоговые окна

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

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

Объединение строк (конкатенация): выполняется с помощью оператора & (можно также использовать +). При объединении двух строк вторая помещается в конец первой, например, в результате команды «пример » & «№1» получим строку «пример №1», а по команде
«25» & «693» получим строку «25693».

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

  1.  Функция Len() используется для определения длины строки. Общий вид команды: результат = Len(строка), например, функция Len(«файл») возвращает число 4.
  2.  Функции UCase() и LCase() используются, чтобы изменить регистр символов заданной строки на верхний или нижний соответственно.
  3.  Функции Left(), Right() и Mid() используются для выделения части строки. Общий вид команды: Новая строка = Left(Исходная строка, число символов), например, в результате команды Left(“самолет”, 3) получим строку «сам», а по команде
    Right («пароход», 3) получим строку «ход». Функция Mid() является более универсальной и часто заменяет собой Left() и Right(). Общий вид команды:
    Новая строка =
    Mid(Исходная строка, начальная позиция, число символов), например, в результате команды Mid(“информатика”, 3, 5) получим строку «форма», а по команде Mid(“подберезовик”, 4) (параметр “число символов” опущен) получим строку «березовик».
  4.  Функции LTrim(), RTrim() и Trim() отсекают пробелы с начала, конца или с обеих сторон строки соответственно.

В Visual Basic используются также встроенные функции преобразования типов данных.

  1.  Функция Str() преобразует число в строку текста. Если число положительное, то первым символом в полученной строке будет пробел. Общий вид команды:
    Строка, содержащая цифры =
    Str(число), например, в результате команды Str(895) получим строку « 895», а по команде Str (-5678) получим строку «-5678».
  2.  Функция Val() преобразует строку, содержащую цифры, в число, последовательно считывая символы строки, пока не встретится нецифровой знак. Общий вид команды:
    Число =
    Str(Строка), например, в результате команды Val(«45Т89») получим число 45, а по команде Val («К593») получим число 0.
  3.  Функция Chr() преобразует ASCII-код символа в соответствующий символ. Например, в результате команды Chr(72) получим символ H, а по команде
    Chr (65) получим символ А.
  4.  

Функция Asc() выполняет обратную задачу: преобразует символ в соответствующий ему ASCII-код. Например, в результате команды Asc(«0») получим код 48, а по команде Asc («а») получим код 97.

Пример1: записать символы данного слова
в обратном порядке («Порядок символов»).

Пример 2: приложение для каждого введенного символа выводит соответствующий ему ASCII-код.


Встроенные константы Visual Basic. Ввод и отображение информации с помощью диалоговых окон

  1.  

Встроенные константы Visual Basic

В Visual Basic предусмотрено большое количество встроенных констант: коды цветов (vbRed, vbBlue и др.), коды клавиш (vbTab, vbCrLf), тип пиктограмм, набор кнопок в диалоговых окнах (vbInformation, vbCritical, vbOK, vbCancel, vbYes) и другие. Константы подробно описаны в справочной системе Visual Basic. Кроме того, значение и описание большинства внутренних констант можно посмотреть, воспользовавшись браузером объектов. Для доступа к нему выполните команду View  Object Browser или нажмите F2.  Основная часть окна Обозревателя разделена на две половины: Classes (Классы) и Members (Члены). Обозреватель позволяет выбрать библиотеку, просмотреть в левой части окна названия классов объектов в алфавитном порядке. В правой половине представлены названия свойств, методов, функций, событий, принадлежащих выбранному объекту, а также встроенные константы. В нижней части окна отображается название используемой библиотеки, синтаксис написания выбранного элемента и комментарий. Обозреватель можно использовать, например, как справочник для правильного написания названий функций, свойств и методов в коде программы.

  1.  Диалоговые окна

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

  1.  Окно ввода: для ввода текстовой информации пользователем во время работы приложения. Вид команды в программном коде:

Символьная переменная = InputBox( «текст сообщения», «заголовок окна», «значение по умолчанию»)

Например:
nm = InputBox("Как тебя зовут?", "Знакомство")

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

  1.  Окно сообщений: выдается на экран во время работы приложения.
  2.  Оператор MsgBox:

 MsgBox «текст сообщения», встроенные константы, «заголовок окна»

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

Например: MsgBox "Наберите имя и нажмите Ok", vbInformation, "Неверный ввод"

  1.  Функция MsgBox, в отличие от оператора, возвращает значение:

Числовая переменная = MsgBox («текст сообщения», встроенные константы, «заголовок окна»)

Например: ex = MsgBox("Вы действительно хотите закончить работу с приложением?", vbYesNo, "Завершение работы")

Замечание: значения встроенных констант, определяющих тип пиктограммы и наличие кнопок в диалоговых окнах, приведены, например, в учебнике Угриновича ([4]), с. 195-196.


Лекция 7

Модуль 3. Основные элементы программирования

Основные алгоритмические конструкции

1 Линейные алгоритмы

2 Алгоритмы ветвления

3 Циклические алгоритмы

Основные алгоритмические конструкции

1.Линейные алгоритмы

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

Например, рассмотренные в четвертом модуле проекты «Свойства формы», «Метка», «Фигуры» и ряд других кодируются с применением линейных алгоритмов.

2.Алгоритмы ветвления

Часто требуется изменить естественный ход последовательного выполнения операторов программы. Тогда применяют конструкции принятия решения (управляющие конструкции).

  1.  Основой для принятия решения в управляющих конструкциях являются условные выражения (условия). Они возвращают одно из 2 значений: истина или ложь и используют следующие операторы сравнения: =, >, <, > =, < =, < > (не равно). Например, условное выражение 5*х +2 > 0 при х = 3 возвращает значение истина, а при х = -1 возвращает значение ложь.

Существуют сложные условия – это последовательности простых условий, объединенные между собой знаками логических операций AND (и), OR (или), NOT (не), например: математическое неравенство –5  y  8 в программировании запишется в виде сложного условия –5 <= y and y <= 8.

  1.  Управляющая конструкция IFThen: применяется, когда необходимо выполнить один или группу операторов при соблюдении определенного условия. Вид команды:

А) IF условие THEN действие (однострочный оператор)

Б) IF условие THEN 

Действия                          (многострочный оператор)

END IF

При  истинности условия выполняются действия, указанные после слова Then, а если условие ложное, то выполняются команды, следующие за оператором IFTHEN.

Например: команда  If  x > 0 then y = SQR(x) дает возможность избежать ошибки при выполнении программы, так как корень будет извлечен только из положительной величины х.

  1.  Управляющая конструкция IFThenElse: применяется, когда необходимо выполнить разные действия в зависимости от соблюдения или несоблюдения условия.
    Вид команды:

А) IF условие THEN действие 1 ELSE действие 2 (однострочный оператор)

Б) IF условие THEN 

Действия 1  

ELSE                       (многострочный оператор)

Действия  2

END IF

Действия 1 выполняются в случае истинного условия, а действия 2 – в случае ложного.

Пример: вычислить Y=

Соответствующая команда имеет вид:

If x > 0 Then y = x^2 + 7 Else y = 5 – 2*x^3

  1.  

  1.  
  2.  
  3.  
  4.  

Оператор ELSEIF: применяется, когда необходимо проверить несколько условий. Условие, указанное после ElseIf, проверяется только в том случае, когда предыдущее условие ложно. Вид команды:

IF условие 1 THEN

 действия 1

ELSEIF условие 2 THEN

 действия 2

. . .

ELSE

 действия n

END IF

  1.  Оператор выбора SELECT CASE: применяется для реализации ветвления с несколькими условиями и вариантами выбираемых действий. Вид команды:

Select Case переменная

Case значение 1

команды

Case значение 2

команды

Case значение n

команды

End Select

Например:       Select Case vozrast

Case 0 to 6

 Print “Дошкольник

Case 7 to 17

 Print “Школьник

 

Case Else

 Print “Недопустимое значение

End Select

С применением алгоритмов ветвления кодируются представленные в работе проекты «Текст», «Прямоугольник», «Рисунок», «Счастливый брак» и другие.

  1.  Циклические алгоритмы

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

  1.  Цикл со счетчиком (FORNEXT)

Такой цикл применяют, когда заранее известно,  сколько раз должно выполняться тело цикла. В данном цикле вводится переменная-счетчик (обозначим ее I), которая определяет число повторений цикла. Для счетчика задаются значения параметров: начальное значение (N) – присваивается переменной-счетчику перед первым выполнением цикла; конечное значение (K);  величина шага изменения счетчика (H) - на эту величину увеличивается значение счетчика после каждого прохода цикла. Перед каждым выполнением цикла значение счетчика сравнивается с конечным значением: если I  K при H > 0 (I K
при H < 0), то выполняются команды тела цикла. В противном случае цикл завершается, и управление передаются следующему после
NEXT оператору.

Пример: вычислить сумму первых ста натуральных чисел.

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

Sub Command1_Click()

For I = 1 TO 100

S = S + I

Next I

Label1.Caption = S

End Sub

С применением цикла со счетчиком кодируются рассмотренные в работе проекты «Авангард», «Порядок символов», «Меньше 10».

  1.  Условный цикл (DO WHILE … LOOP)

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

Словесная форма записи:

Пока условие выполняется, повторять:

 Действия (тело цикла)

Конец цикла.

  1.  Условие в начале цикла (цикл с предусловием):

  1.  Условие в конце цикла (цикл с постусловием):

Пример: на форме строятся разноцветные окружности, произвольно расположенные, разного радиуса (от 50 до 150) до тех пор, пока значение радиуса не станет равно 100. Количество таких окружностей подсчитывается и выводится на экран.

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

Private Sub Command1_Click()

Dim r As Byte

Dim i As Integer                           ‘счетчик количества построенных окружностей

Randomize

Do

r = Rnd * 100 + 50

Circle (Rnd * Form1.Width, Rnd * Form1.Height), r, RGB(Rnd * 255, Rnd * 255, Rnd * 255)

i = i + 1

Loop While r <> 100                      ‘цикл повторяется, пока радиус отличен от 100

Label1.Visible = True

Label1.Caption = i

End Sub

Иногда бывает необходимо прервать выполнение цикла. Тогда внутри тела цикла используют оператор EXIT FOR для цикла со счетчиком (EXIT DO для условного цикла).

Пример: с помощью цикла со счетчиком найдем порядковый номер первого положительного элемента массива.

Sub Command1_Click()

Dim Z, I as Integer

For I = 1 TO 100

IF A(I) > 0 THEN Z = I : EXIT FOR

Next I

Label1.Caption = Z

End Sub

 


Лекция 8

Модуль 3. Основные элементы программирования

 Массивы в VB

1 Массивы переменных

2 Массивы элементов управления

Массивы в VB

  1.  Массивы переменных

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

  1.  Объявление массива: Dim A(10) As Single (в массиве 11 элементов вещественного типа (нумерация индексов с 0)); Dim C(1 to 20) As Integer (в массиве 20 элементов целого типа).
  2.  Способы заполнения массива:
  3.  С помощью оператора присваивания:

For i = 1 To n

 x(i) = Int(Rnd * 100)+1   ' заполнение случайными числами из отрезка [1; 100]

Next i

  1.  Ввод массива с клавиатуры: 

For i = 1 To n

 x(i) = InputBox("x(" & Str(i) & ")=", "Ввод массива с клавиатуры")

Next i

Пример: массив заполнен произвольными числами от 1 до 100. Сколько в массиве чисел, меньших 10?

Private Sub Form_Load()

Dim a(1 To 100) As Single

Dim i, k As Byte

Randomize

For i = 1 To 100

a(i) = Rnd * 100

If a(i) < 10 Then k = k + 1

Next i

Label1.Caption = "В массиве " & k & " чисел, меньших 10."

End Sub

  1.  Массивы элементов управления

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

Пример: на форме создать массив из 3 меток.

Замечание: элементы массива будут иметь одинаковое имя Label1 и отличаться значением свойства Index: 0, 1, 2.



Лекция 9. Графические возможности языка Visual Basic

1. Понятие координатной системы

2. Графические методы

2.1 Основные графические методы

2.2 Способы задания цвета

2.3Примеры

3. Элементы управления, применяемые для работы с графикой

Без использования графики интерфейс созданного приложения будет скучным, а часто и недостаточно понятным. Графика широко применяется для выделения определенной информации на экране, для разнообразия вариантов отображения информации на экране (например, построение графиков, диаграмм), для поддержки интуитивно-понятного интерфейса приложения.

В Visual Basic графику можно применять двумя основными способами: с помощью графических методов или элементов управления.

  1.  Понятие координатной системы

При использовании графических методов или элементов управления нужно описывать, где именно на форме (в графическом поле) должен располагаться нужный элемент или нарисована геометрическая фигура, то есть необходимо задать координаты. В отличие от математики, в Visual Basic значение вертикальной координаты Y возрастает сверху вниз.

Таким образом, получаем систему координат указанного вида:

Стандартной единицей измерения в системе Visual Basic является твип (1/1440 дюйма). Это более точная единица измерения, чем привычные для пользователей пиксели, размер которых зависит от установленного в данный момент разрешения экрана.


  1.  Графические методы

Графические методы – это функции, которые содержатся в языке Visual Basic и вызываются во время работы приложения. Их можно применять для рисования изображений в форме, в графическом поле PictureBox, а также для объекта Printer. В среде Visual Basic с помощью графических методов можно решать уже ставшие традиционными графические задачи: «Неоновая реклама», «Мыльные пузыри», «Конфетти», «Падающий снег», «Змейка», строить орнаменты, имитировать движение геометрических фигур по разным траекториям и многое другое (как, например, в языке Basic). В то же время Visual Basic предоставляет новые возможности при работе с графикой (например, богатая цветовая палитра, разнообразные способы закраски, выбор единиц измерения, возможность установить новый масштаб, более простой способ создания анимации и др.).

Основные графические методы:

  1.  Сls: объект.Cls

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

  1.  Pset: объект.Pset(X,Y) [, цвет]

Построение точки, например, команда Pset (300,100), RGB(0, 0, 255) строит точку на текущей форме с координатами x = 300, y = 100 ярко-синего цвета.

  1.  Point: объект.Point(X,Y)              Возвращает RGB-цвет точки.
  2.  Line: объект.Line(X1,Y1)-(X2,Y2) [, цвет, B/BF]

Построение линии, прямоугольника (если указан параметр B), закрашенного прямоугольника (если указан параметр BF), например:

Команда Line(200, 300) – (600, 800), vbRed строит на форме линию красным цветом, а команда Line(200, 300) – (600, 800), vbBlue, В строит на форме прямоугольник (прямоугольник задается своей диагональю).

Если значения (X1,Y1) в команде не указано, то построение начнется в текущей точке, например, Line - (2000, 300).

  1.  Circle: Построение окружности, эллипса, дуги, сектора.

объект.Circle(X,Y), радиус [, цвет, начальн. угол, конечн. угол, коэффициент сжатия]

Здесь (X,Y) – координаты центра, начальный и конечный углы задаются в радианах для построения дуг (от 0 до 2 или от 0 до -2) и секторов (углы должны принимать отрицательные значения), коэффициент сжатия задается для построения эллипса.

Пример: Команда Circle(1000, 1000), 300, , 3*Pi/4, Pi/3 строит дугу окружности, а команда
Circle(1000, 1000), 300, , , , 2 строит вытянутый по вертикальной оси эллипс.

  1.  Print: объект. Print числовое или строковое выражение   

Вывод текста, начиная с текущей позиции, например, команда Print “Значение функции равно”; y выводит на форму, начиная с текущей позиции, ответ задачи.

Если в методе Print несколько значений, они могут разделяться запятой (тогда каждое значение печатается в своей колонке, ширина которой 14 символов) или точкой с запятой (тогда значения печатаются в одной строке рядом друг с другом).

Пример: Print “y= “; y, “z= “; z

Каждый метод Print выводит значения в новую строку. Когда, вызывая новый метод Print, необходимо продолжить печать в той же строке, надо в конце предыдущей команды Print  поставить запятую или точку с запятой: Print “Расстояние “; : Print s

В методе Print можно использовать функции Spc(n) (задает количество пробелов перед печатаемым значением) и Tab(n) (выполняет печать, начиная с n-ой позиции строки), например: команда Print Tab(20) “задача” печатает слово “задача”, начиная с 20-ой позиции строки.

Способы задания цвета:

  1.  В Visual Basic имеются встроенные константы для обозначения некоторых цветов: vbBlack, vbRed, vbGreen, vbYellow, vbBlue, vbMagenta, vbCyan, vbWhite.
  2.  Значение цвета можно определить также с помощью функции RGB(r, g, b), где параметры r, g, b принимают целые значения от 0 до 255 и определяют интенсивность красной, зеленой и синей составляющей цвета. Этим способом можно задать более 16 миллионов цветов. Например, следующая команда строит линию серого цвета (поровну красного, зеленого и синего компонента): Line(100, 100) – (300, 400), RGB(200, 200, 200)
  3.  Еще одна полезная функция для работы с цветом QBColor(c), где параметр с принимает целые значения от 0 до 15, а функция возвращает соответствующее шестнадцатеричное значение цвета. Например, команда Pset(200, 500), QBColor(4) строит на форме точку красным цветом.

Замечание: Если в графическом методе цвет явно не определен, то для построения соответствующего элемента используется цвет, указанный в свойстве ForeColor текущего объекта.

При работе с графическими методами используются свойства объектов (формы, графического поля, принтера), которые воспроизводят это изображение:

ForeColor: значение цвета точки в методе Pset и цвета границ фигур в методах Line, Circle (если цвет явно не указан в методе), а также цвет текста в методе Print.

DrawWidth: размер точки в методе Pset и толщина линий в методах Line, Circle.

DrawStyle: стиль линии в методах Line, Circle.

FillColor: цвет заполнения контура в методах Line, Circle.

FillStyle: стиль заполнения в методах Line, Circle.

Font: шрифт и размер текста в методе Print.

CurrentX, CurrentY: координаты текущей точки в методе Line и первого символа в методе Print (эти свойства задаются только в программном коде).

Например, построение треугольника, начиная с указанной текущей точки:

CurrentX=1500 : CurrentY=500

Line - (3000, 2000) : Line - (1500, 2000) : Line - (1500, 500)

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

Пример1: определить, находится ли точка, на которой пользователь щелкнул мышью, внутри красного прямоугольника, нарисованного во время загрузки формы (проект «Прямоугольник»).

Private Sub Form_Load()

Form1.AutoRedraw = True

Line (100, 200)-(1500, 2500), vbRed, BF

End Sub

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

If Point(X, Y) = vbRed Then

 MsgBox "Точка (" & X & "," & Y & ") находится в прямоугольнике"

Else

 MsgBox "Точка (" & X & "," & Y & ") находится вне прямоугольника"

End If

End Sub

Пример2: после щелчка по кнопке Построить на форме строится линия произвольного размера и цвета. В проекте предусмотрена возможность удалить изображение.

Private Sub Command1_Click()

Randomize ‘дает возможность при каждом запуске программы генерировать с помощью ‘Rnd разные числовые последовательности

Line (Rnd * Form1.Width, Rnd * Form1.Height)-(Rnd * Form1.Width, Rnd * Form1.Height), _RGB(Rnd * 255, Rnd * 255, Rnd * 255)

End Sub

Private Sub Command2_Click()

Cls

End Sub

Пример3: при нажатии левой кнопки мыши на форме строятся разноцветные окружности с центром в точке положения курсора (проект «Рисунок»).

В процедуре перемещения указателя мыши MouseMove параметр Button дает возможность определить, какая кнопка мыши нажата (1 – левая, 2 – правая),
X, Y – текущие координаты курсора мыши.

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

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

If Button = 1 Then Circle (X, Y), 200, RGB(Rnd * 255, Rnd * 255, Rnd * 255)

End Sub


  1.  Элементы управления, применяемые для работы с графикой

Простейшими элементами управления для работы с графикой являются Line и Shape.

  1.  Линия (Line): используются для размещения на форме линий различной толщины и стилей. Некоторые свойства:  

Name:  по умолчанию Line1

X1, Y1, X2, Y2: координаты начальной и конечной точек

BorderColor: цвет линии,  BorderWidth: толщина линии

BorderStyle: стиль линии (если свойство BorderWidth=1, то может принимать целые значения от 0 до 6: сплошная, пунктирная, штрих-пунктирная и другие стили).

  1.  Фигура (Shape): используются для размещения на форме геометрических фигур (прямоугольник, квадрат, овал, окружность, скругленный прямоугольник, скругленный квадрат).

Некоторые свойства:  Name:  по умолчанию Shape1

Shape: задает тип фигуры (целые значения от 0 до 5)

BorderColor: цвет линии границы,  BorderWidth: толщина линии границы

BorderStyle: стиль линии границы (если BorderWidth=1, то целые значения от 0 до 6)

FillColor: цвет заполнения фигуры,  FillStyle: стиль заполнения (целые значения от 0 до 7: прозрачный, сплошная заливка, вертикальные линии и другие стили).

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

Пример: в зависимости от заданного значения свойства Shape строятся разные типы фигур (проект «Фигуры»).

Private Sub HScroll1_Change()

Shape1.Shape = HScroll1.Value

Label2.Caption = HScroll1.Value

End Sub

Private Sub HScroll1_Scroll()

HScroll1_Change

End Sub

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

  1.  Поле образа (Image) – элемент управления, который помещает изображение в нужное место формы, может изменять его размеры и пропорции.

Некоторые свойства:  

Name:  по умолчанию Image1

Stretch: способ подгонки изображения

а) Если Stretch=True, то размер загружаемого изображения подгоняется под размер Image

б) Если Stretch=False, то размер Image подгоняется под размер загружаемого изображения

Picture: путь доступа к файлу, хранящему загружаемое в Image изображение

Пример: представлено одно и то же изображение, помещенное в элементы Image с разным значением свойства Stretch: в первом изображение исходного размера (Stretch = False), а в других показаны возможные эффекты при изменении размера Image (Stretch = True).

  1.  Графическое поле (Picture Box) – элемент управления, который помещает изображение в нужное место формы, а также имеет собственную систему координат и позволяет использовать графические методы и анимацию. В отличие от элемента Image, элемент Picture Box не может изменять исходный размер изображения.

Некоторые свойства: Name: по умолчанию Picture1

AutoSize:

а) Если AutoSize =True, то размер Picture подгоняется под размер загружаемого изображения

б) Если AutoSize =False, то размер Picture не подгоняется под размер загружаемого изображения

Picture: путь доступа к файлу, хранящему загружаемое в Picture изображение

AutoRedraw: перерисовка изображения

Пример 1: представлено одно и то же изображение, помещенное в элементы Picture Box, у которых разные размеры и значения свойства AutoSize. В последнем случае графическое поле подгоняется по размеру изображения.

Пример 2: На форму помещаем элемент Picture  и командную кнопку Нарисовать, после щелчка по которой создается «картина» из 50  разноцветных прямоугольников («Авангард»).  

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

Private Sub Command1_Click()

Dim i As Integer      'номер фигуры

Dim x1, x2, y1, y2 As Integer   'координаты фигуры

Randomize Timer

Picture1.Cls          'очищаем графическое поле

'строится 50 закрашенных прямоугольников

'координаты и цвет задаются случайным образом

For i = 1 To 50

x1 = Picture1.Width * Rnd            

y1 = Picture1.Height * Rnd           

x2 = Picture1.Width * Rnd

y2 = Picture1.Height * Rnd

Picture1.Line (x1, y1)-(x2, y2), RGB(Rnd * 255, Rnd * 255, Rnd * 255), BF

Next i

End Sub

Замечание: Во время выполнения приложения для загрузки изображения на форму, командную кнопку, в элементы Image  и Picture Box применяется функция LoadPicture():

Image1.Picture = LoadPicture(“C:\Рисунки\ris1.bmp”)

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

Picture1.Picture = LoadPicture(“”)

о VBA


 

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

18882. Романтизм в европейском и русском искусстве XIX в. Т.Жерико, Э.Делакруа, К.П. Брюллов 24.09 KB
  Романтизм в европейском и русском искусстве XIX в. Т.Жерико Э.Делакруа К.П. Брюллов. Развитие романтизма в живописи протекало в острой полемике с приверженцами классицизма. Романтики укоряли своих предшественников в холодной рассудительности и отсутствии движения жи...
18883. Баро́кко 26.29 KB
  Баро́кко характеристика европейской культуры XVII XVIII веков центром которой была Италия. Стиль барокко появился в XVI XVII веках в итальянских городах: Риме Мантуе Венеции Флоренции. Эпоху барокко принято считать началом триумфального шествия западной цивилизации. Баро...
18884. Евангельская тема в русском искусстве XIX века. А.А.Иванов, Н.Н Ге, И.Н.Крамской, В.Д. Поленов 31.82 KB
  Евангельская тема в русском искусстве XIX века. А.А.Иванов Н.Н Ге И.Н.Крамской В.Д. Поленов. Центральной фигурой в живописи середины века был Александр Андреевич Иванов 1806–1858. Путь А. Иванова никогда не был легким за ним не летела крылатая слава. При жизни его талант цени...
18885. Рококо. Интерьер - как ансамбль 25.86 KB
  Рококо. Интерьер как ансамбль. Характеристика стиля на примере Китайского дворца Антонио Ренальди в Ораниенбауме. Рококо декоративный стиль в искусстве и архитектуре зародившийся во Франции в начале 18 в. достигло апогея при Людовике XV. и распространившийся по все...
18886. Бытовой жанр в русской живописи 19в. П.А.Федотов, В.Г.Перов, И.Е. Репин, Передвижники 25.74 KB
  Бытовой жанр в русской живописи 19в. П.А.Федотов В.Г.Перов И.Е. Репин Передвижники. П.А.Федотов ― добрая ирония и красота предметного мира. Сватовство майора Вдовушка Анкор ещё анкор. В.Г.Перов ― острота социальной критики Крестный ход на Пасху Тройка Провод...
18887. Постимпрессионизм. В. Ван Гог, П.Гоген, П.Сезанн 23.7 KB
  Постимпрессионизм. В. Ван Гог П.Гоген П.Сезанн. Постимпрессионизм от лат. post после и импрессионизм условное собирательное обозначение основных направлений французской живописи конца XIX начала XX вв. Мастера постимпрессионизма многие из которых ранее примыкали к имп...
18888. Русский классицизм. Универсальный стиль эпохи. От Екатерины II до Александра I 27.9 KB
  Русский классицизм. Универсальный стиль эпохи. От Екатерины II до Александра I. Русский классицизм архитектурный стиль распространённый в России во второй половине 18 19вв. Особенностью русского классицизма являлось эклектическое сочетание в одном произведении разнос...
18889. Художественное объединение «Мир искусства» 28.78 KB
  Художественное объединение Мир искусства. Мир искусства русское художественное объединение. Оформилось в конце 1890х гг. официально в 1900 в Петербурге на основе кружка молодых художников и любителей искусства во главе с А. Н. Бенуа и С. П. Дягилевым. Как выставочный...
18890. Стиль Ампир. Величие и закат классицизма 22.13 KB
  Стиль Ампир. Величие и закат классицизма. Ампи́р от фр. empire империя стиль позднего высокого классицизма в архитектуре и прикладном искусстве. Возник во Франции в период правления императора Наполеона I; развивался в течение трёх первых десятилетий 19 века; сменил...