- •Содержание
- •Основные понятия ооп
- •Объекты
- •Классы объектов
- •Свойства
- •События
- •Инкапсуляция
- •Наследование
- •Полиморфизм (имеющий много форм)
- •Визуальное проектирование интерфейса
- •Процесс создания приложений
- •Структура проекта
- •Событийно-управляемое программирование наVb
- •Типы данных, константы и переменные
- •Типы данных
- •Особые значения
- •Переменные
- •Объявление переменных
- •Константы
- •Выражения, операторы, встроенные функции Выражения
- •Операторы
- •Операции и выражения
- •Встроенные функцииVb Математические функцииVb
- •Функции преобразования данныхVb
- •ФункцияInputBox
- •ФункцияMsgBox
- •Некоторые константы аргумента Кнопки
- •Ввод и вывод данных в vb
- •Ввод данных
- •Вывод результатов
- •Функция Format
- •Управляющие операторы
- •Основные логические операции
- •Таблицы истинности для основных логических операций:
- •Циклы с параметром
- •Циклы «Делать пока»
- •Массивы
- •Одномерные массивы
- •Многомерные массивы
- •ОператорOptionBase
- •ОператорErase
- •Ввод и вывод массивов Одномерные массивы
- •Двумерные массивы
- •Процедуры и функции Sub-процедуры
- •Событийные процедуры
- •Процедуры пользователя
- •Вызов процедур
- •Аргументы
- •Функции-процедуры
- •Данные символьного типа
- •Функция Split
- •Функция Join
- •Оператор Mid
- •Функции и операторы для работы с файлами
- •Открытие файлов
- •Закрытие файлов
- •Работа с файлами последовательного доступа
- •Чтение данных
- •Запись данных
- •Элемент управления CommonDialog
- •Графика в vb
- •Методы графики в vb
- •Задание цвета
- •Свойства объектов, влияющих на графические методы:
- •Применение метода Scale
- •Построение графика функции
- •Некоторые дополнительные элементы управления, которые часто используются в проектах.
- •Объект управленияProgressBar
- •Создание меню
- •Свойства
- •Работа с несколькими формами
Процесс создания приложений
Постановка задачи.Составление точного и понятного словесного описания того, как должно работать будущее приложение, что должен делать пользователь в процессе его работы. Это описание должно объяснять и то, как будет выглядеть экранная форма (окно) этого приложения, в каком виде будут представлены данные, которые нужно преобразовать с помощью этого приложения (исходные данные и результаты).
Разработка интерфейса.Создание экранной формы (окна приложения) со всеми находящимися на этой форме объектами и свойствами этих объектов.
Собственно программирование. Определение, какие события будут происходить в процесс работы приложения, составление алгоритмов процедур для этих событий и написание программных кодов этих процедур.
Отладка программы. Устранение синтаксических и семантических (логических) ошибок в процедурах. Достижение удовлетворительной работы приложения в среде проектирования.
Сохранение проекта. Для возможности дальнейшей доработки.
Компиляция и создание исполняемого приложения. Для работы за пределами среды.
Структура проекта
Основными объектами, используемыми при визуальном программировании, являются формы(Forms). Форма представляет собой окно, на котором размещаются управляющие элементы. Форма обеспечивает создание графического интерфейса разрабатываемого приложения.
Проект— это разрабатываемое на языке Visual Basic приложение.
Проект включает в себя не только форму с размещенными на ней управляющими элементами (объектами), но и программные модули событийных процедур, которые описывают поведение объектов приложения и взаимодействие объектов между собой.
В Visual Basic любой проект состоит из следующих файлов:
файл каждой формы (расширение frm). Это обычный текстовый файл, в котором хранится описание формы: управляющие элементы с их свойствами и программный код, относящийся к этим элементам. Таких файлов в проекте может быть несколько по числу форм.
файл каждой формы, содержащий бинарную информацию (например картинку в PictureBox) (расширение frx)
файл проекта, содержащий информацию о проекте (расширение vbp)
информация о рабочей области проекта (workspace) (расширение vbw)
файл каждого модуля (расширение bas). В этом стандартном модуле хранится код, не связанный с конкретной формой или элементом управления. Это тоже текстовый файл. В нём могут быть объявлены глобальные переменные, константы, функции и т.д. Короче, только код. Без элементов управления.
Дополнительные файлы, которые могут быть подключены к проекту:
файл каждого модуля классов (расширение cls). Текстовый файл.
файл каждого дополнительного элемента управления (расширение ctl). Текстовый файл.
файл ресурсов (расширение res).
и другие файлы (ocx, tlbи т.д.).
Событийно-управляемое программирование наVb
Каждое действие в Windowsвызывает событие, которое в виде сообщения передается в приложение (например, двойной щелчок на документеwordсообщает приложению – хватит спать, давай работать). Приложение анализирует сообщение и выполняет соответствующее действие (загружается и открывает документ). Приложения, создаваемые с помощьюVB, также работают по этому принципу. Но при этом часть работы системаVBберет на себя. Она перехватывает сообщение и передает его соответствующему объекту (например, кнопке), где затем вызывает соответствующее событие (например,Click).
В программах, управляемых событиями, нет сплошного кода, который выполняется с начала до конца. После запуска таких программ у пользователя нет четко определенного пути. Он может в любой момент нажать какую-нибудь кнопку, ввести данные текста в соответствующее поле, прекратить обработку и вызвать другую программу.
В соответствии с тем, что в VBопределен событийный механизм управления, для каждого объекта (управляющие элементы, формы) в системе определен перечень относящихся к нему событий. Реакцию на событие можно запрограммировать. Для этого с помощью кода создаются процедуры обработки событий (событийные процедуры).
Сначала выбирают объект — элемент управления пользовательского интерфейса, для которого будет записана программа его действий. Далее раскрывают список процедур, то есть событий для выбранного объекта, при совершении которых над объектом будет выполняться записанная программа, и выбирают подходящее событие.
В заголовке каждой процедуры, написанной для объекта на форме, указывается слово Sub(сокращение отsubroutine- подпрограмма), которому предшествует слово Private,что означает «используемая только на данной форме». Если процедура будет использоваться и в других формах проекта приложения, то заголовок процедуры должен начинаться со слова Public, что означает «доступная для других форм». Затем следует собственно имя процедуры, состоящее из имени объекта, для которого написана процедура и, через символ подчеркивания _ название выбранного события, в скобках после имени процедуры записываются ее параметры, которые могут и отсутствовать
Объект_Событие().
Каждая процедура представляет собой отдельный программный модуль.
В событийной процедуре может участвовать несколько объектов. Например, само событие происходит с первым объектом, в результате второй объект изменяет значение своего свойства, а третий – реализует какой-либо метод.
Существует определенный формат программного кода, задающего установку свойства и использование метода:
объект.свойство = значение
объект.метод [Параметр [...]],
где Объект - имя настраиваемого объекта;
Свойство - характеристика, которую нужно изменить;
Значение - новая установка свойства;
Метод - команда, которая используется для изменения объекта;
Параметр - аргумент, используемый методом.
Private Sub Commandl_Click()
Tex2.text=''Вычисления закончились''
Picture1.print ”Результат = ”; format(a,”0.000”)
end Sub
Главное преимущество работы с объектами в том, что объекты обеспечивают программный код, который уже не требуется писать разработчику. Ему просто нужно установить свойства объекта и вызвать методы объекта, чтобы побудить объект выполнить требуемые функции.
Состояние объекта можно изменить двумя способами:
1. Изменить значение свойств (Properties), принадлежащих объекту (например, для текстового окна — его размер, цвет, тип шрифта), либо в Окне Properties, которое активно только на стадии проектирования, либо задавая значения свойств в программном коде.
Text1.Heght=300
Text1.Width=1200
BackColor= &H000000FF&
Text1.Font = arial
Text1.FontItalic = True
Text1.FontSize = 10
Многие объекты имеют одинаковые свойства:
Caption. У формы - это заголовок окна, а у элемента метки (Label) - это текст внутри метки.
Visible определяет, является ли элемент управления видимым.
Enabled определяет, может ли элемент управления использоваться в процессе работы программы. Если элемент управления не разрешен (свойствоEnabled имеет значениеFalse), и щелчок мыши по нему не дает эффекта, а текст, разрешенный на нем, становится обесцвеченным.
Default идентифицирует кнопку, которая будет задействована, когда пользователь нажмет клавишуEnter. Обычно это кнопки <ОК> или <Yes>. Только одна кнопка на форме может иметь установкуTrue свойстваDefault, все остальные должны иметь установкуFalse.
Однако нет необходимости описывать все свойства каждого объекта, расположенного на форме: значения всех свойств устанавливаются по умолчанию.
2. Применить к объекту методы (Methods), определенные для данного объекта в языке программирования VB (например, для графического окна — установить фокус, очистить, выдать в него результат).
Picture1.SetFocus
Picture1.Cls
Picture1.print x;y;z
Разные типы объектов могут иметь различные методы. Одни и те же методы применимы к разным объектам:
Drag -обрабатывает операцииПеретащить иОпустить;
Move - отвечает на запросы программы по перемещению объекта;
SetFocus - передает фокус объекту, определенному в вызове метода. Фокус - состояние, при котором в объект направляется ввод от мыши или клавиатуры. В каждый момент времени только один объект в окне может иметь фокус. При активизации элемента управления происходят события:Got Focus - получение фокуса одним объектом иLostFocus - потеря фокуса другим объектом.
Все элементы управления пользовательского интерфейса, которые размещаются на формах, обладают определенным перечнем событий,при совершении которых над соответствующим элементом управления будут выполняться запрограммированные действия.
Для многих элементов управления общими являются такие события:
Change - пользователь изменяет текст;
Click - пользователь щелкает основной (левой) кнопкой мыши на объекте;
Dblclick - пользователь дважды щелкает основной кнопкой мыши на объекте;
DragDrop - пользователь перемещает элемент управления в новое положение;
DragOver - пользователь перемещает объект поверх элемента управления;
GotFocus -объект получает фокус;
KeyDown - нажимается клавиша при условии, что объект находится в фокусе;
KeyPress - нажимается и отпускается клавиша при условии, что объект находится в фокусе;
KeyUp - отпускается клавиша при условии, что объект находится в фокусе;
LostFocus - объект теряет фокус;
MouseDown - нажимается кнопка мыши при условии, что указатель мыши находится на объекте;
MouseMove - указатель мыши движется поверх объекта;
MouseUp - отпускается кнопка мыши при условии, что указатель мыши находится на объекте.
События MouseDown иMouseUp вызываются любой кнопкой и сообщают, какая из кнопок нажата или отпускается.
Английские названия некоторых элементов управления, принятых в Windows:
-
Элемент управления
Control
Вид в VB на Toolbox
Кнопка
Button
Меню
Menu
Список
Listbox
Раскрывающийся список
ComboBox
Диалоговое окно
Dialogbox, Dialog
Полоса прокрутки
Scrollbar
Флажок
Checkbox
Переключатель
Option
Корешок вкладки
Tab
Текстовое поле
Textbox
Надпись
Label
Движок
Slider
Список дисков
DriveListBox
Список каталогов
Directory List Box
Список файлов
File List Box
В системе VisualBasicесть не только визуальные компоненты (те, которые видны в окне программы), но и не визуальные (объекты, созданные с их помощью, не видны в окне работающей программы). Например,timer(таймер) – не визуальный компонент, но это не мешает ему иметь свои события и методы, взаимодействовать с другими объектами программы. Для таймера главное событие – истечение заданного интервала времени. Поэтому таймер используют для выполнения определенных действий через заданный интервал времени. Важное свойство таймера –Interval(Интервал). Оно указывает, когда в следующий раз таймер должен сработать. Промежуток времени задается в миллисекундах.