
- •Введение
- •1. Общая характеристика языка Visual Basic
- •1.1. Назначение языка
- •1.2. Свойства языка
- •1.3. Основные понятия
- •2. Среда разработки Visual Basic
- •2.1. Начало работы в среде
- •2.2. Структура главного окна
- •2.2.1. Панель элементов управления
- •2.2.2. Окно формы (Form)
- •2.2.3. Окно свойств (Properties)
- •2.2.4. Окно кода
- •События загрузки формы Form_Load)
- •2.2.5. Окно проекта (Project)
- •2.2.6. Окна расположения формы (Form Layout) и просмотра объектов (Object Browser)
- •2.3. Выполнение программы
- •2.4. Сохранение проекта
- •Save File As Save Project As
- •2.5. Настройка среды vb
- •3. Реализация линейного алгоритма в среде Visual Basic
- •3.1. Порядок решения экономических задач в визуальной среде
- •3.2. Имена элементов управления
- •Общепринятые префиксы
- •3.3. Проектирование решения линейной задачи средствами Visual Basic
- •Структура данных
- •3.3.5. Интерфейс с пользователем
- •3.3.6. Код программы
- •3.3.7. Реализация проекта
- •3.3.8. Анализ проекта
- •3.3.9. Выполнение программы и анализ полученных результатов
- •4. Типы данных
- •4.1. Константы и переменные
- •Некоторые константы среды vb
- •4.2. Название типов данных и имена переменных
- •Некоторые типы данных
- •4.2.1. Целые типы
- •Целые типы
- •4.2.2. Вещественные типы
- •Вещественные типы
- •4.2.3. Булевский тип (Boolean). Алгебра высказываний
- •X Or (Not y)
- •4.2.4. Тип даты и времени (Date)
- •Некоторые функции для работы с датами
- •4.2.5. Строковый тип (String)
- •4.3. Старшинство операций
- •4.4. Оператор присваивания
- •4.5. Явное и неявное объявление переменных
- •Суффиксы типов данных
- •4.6. Проектирование решения задачи с различными типами данных
- •Используемые данные
- •4.6.5. Интерфейс с пользователем
- •4.6.6. Код программы
- •4.6.7. Реализация проекта
- •4.6.8. Анализ проекта
- •4.6.9. Выполнение программы и анализ полученных результатов
- •5. Проектирование разветвляющихся вычислительных процессов
- •5.1. Условный оператор
4.6.6. Код программы
Для реализации задачи в коде нужно предусмотреть обработку следующих трех событий:
1) загрузка формы;
2) потеря фокуса текстовым полем "Начало";
3) щелчок на кнопке "Вычислить".
Тексты соответствующих процедур представлены ниже.
Option Explicit 'Обязательное описание переменных
Const КД = 7 'Количество дней в периоде
'Вычисление стоимости товара
Private Sub cmdВычислить_Click()
Const СтавкаНДС = 20
'Описание переменных
Dim curЦенаНДС As Currency, _
curСтоимость As Currency
'Вычисление цены с учетом НДС
curЦенаНДС = CCur(txtЦена) + CCur(txtЦена) * СтавкаНДС / 100
'Вычисление стоимости
curСтоимость = curЦенаНДС * CInt(txtКоличество)
'Формирование результата
lblРезультат = "Стоимость товара с учетом НДС составляет " & _
Format(curСтоимость, "0.00") & " грн." & vbCrLf & _
"Цена действует на период с " & txtНачало & _
" до " & lblрзтОкончание
End Sub
'Задание текущего значения даты начала периода
'и вычисление даты его окончания
Private Sub Form_Load()
txtНачало = Date
lblрзтОкончание = Date + КД
End Sub
'Вычисление даты окончания периода
'при изменении его начала
Private Sub txtНачало_LostFocus()
lblрзтОкончание = CDate(txtНачало) + КД
End Sub
4.6.7. Реализация проекта
1. Запустить на выполнение VB для создания нового проекта.
2. Построить форму согласно проекту.
3. Дважды щелкнуть на форме и в открывшемся окне кода в заготовку процедуры Form_Load ввести ее тело, т.е. операторы:
txtНачало = Date
lblрзтОкончание = Date + КД
4. В окне кода в поле со списком Object выбрать элемент General, чтобы перейти в раздел общих описаний формы и там ввести описание константы КД (Const КД =7).
5. В окне кода в поле со списком Object выбрать элемент txtНачало, а в поле со списком Procedure – событие «LostFocus» и в заготовку процедуры txtНачало_LostFocus ввести ее тело, т.е., оператор:
lblрзтОкончание =СDate(txtНачало)+ КД
6. В окне кода в поле со списком Object выбрать элемент «сmdВычислить», а в поле со списком Procedure – событие «Click» и в заготовку процедуры сmdВычислить_Click ввести ее тело.
4.6.8. Анализ проекта
Каждое событие обрабатывается отдельной процедурой, причем каждое событие вызывает разные действия. Поэтому код приложения состоит из трех процедур.
В двух процедурах Form_Load и txtНачало_LostFocus используется константа «КД». Для того чтобы она была доступна в обеих процедурах, константу помещают в общей части кода формы (перед всеми процедурами).
В коде приложения применяется принцип явного описания переменных. Для того чтобы система VB следила за обязательностью явного описания каждой используемой переменной, вначале кода стоит оператор Option Explicit.
В процедуре Form_Load использована встроенная функция Date, с помощью которой определяется текущая дата.
Процедура txtНачало_LostFocus предназначена для определения даты окончания периода в случае изменения начальной даты. Поскольку начальная дата содержится в текстовом поле txtНачало (строковый тип), то для преобразования в тип дата/время применяется функция CDate.
Процедура cmdВычислить_Click предназначена для вычисления стоимости товара с учетом НДС и вывода результата.
Для выполнения расчетов используется постоянная величина ставки НДС (20 %). Она применяется только в этой процедуре. Поэтому НДС объявлена внутри процедуры как константа.
Цена товара с учетом НДС и соответствующая стоимость являются переменными величинами, поскольку они вычисляются на основе введенных пользователем значений цены производителя и количества товара. Поэтому в коде цена товара с учетом НДС и стоимость описаны как переменные в операторе Dim.
Т. к. исходные данные цена и количество вводятся в текстовые поля (строковый тип) и в дальнейшем участвуют в арифметических выражениях, для их преобразования к числовому типу используются встроенные функции CCur() и CInt().
При формировании сообщения о результате (строковый тип) используется встроенная функция Format(curСтоимость,”0.00”), которая преобразует значение числовой переменной curСтоимость из денежного типа в строковый. При этом в дробной части сохраняет два разряда для копеек.
Для вывода второго предложения результата в начало второй строки используется константа vbCrLf.