Интерфейс с пользователем


Решение задачи производится с помощью формы, приведенной на рис. 5.3.

На форме слова «План» и «Факт» представляются надписями. Соответствующие исходные данные вводятся в текстовые поля. Вычисления производятся при нажатии кнопки «Вычислить». Результат помещается в вогнутую область под кнопкой. В зависимости от результата вычисления переменная sngОтклонение может принимать одно из следующих значений:

1) План перевыполнен на "0,00" %;

2) План недовыполнен на "0,00" %;

3) План выполнен на 100 % .

Здесь принято условное обозначение "0,00", которое означает, что результат sngОтклонение выводится с двумя разрядами в дробной части.

 

Область результата представляется надписью lblРезультат.

 

 

       
   
Область результата
 
 

 


Рис. 5.3. Проект формы для решения задачи

Код программы

Процедура, которая обрабатывает событие "Щелчок на кнопке Вычислить", представлена ниже.

Option Explicit

Private Sub cmdВычислить_Click()

'Объявление переменных

Dim sngПроцент As Single, _

sngОтклонение As Single, _

strОтклонение As String

'Вычисление процента выполнения плана

sngПроцент = CSng(txtФакт) / CSng(txtПлан) * 100

'Вычисление процента отклонения от плана

If sngПроцент > 100 Then

sngОтклонение = sngПроцент - 100

strОтклонение = "План перевыполнен на " & _

Format(sngОтклонение, "0.00") & "%"

ElseIf sngПроцент < 100 Then

sngОтклонение = 100 - sngПроцент

strОтклонение = "План недовыполнен на " & _

Format(sngОтклонение, "0.00") & "%"

Else

strОтклонение = "План выполнен на 100%"

End If

'Вывод сообщения

lblРезультат = strОтклонение

End Sub

Реализация проекта

1. Запустить на выполнение VB для создания нового проекта.

2. Задать заголовок формы «Отклонение от плана» и ее имя frmОтклонение.

3. На форме создать надписи и текстовые поля для исходных данных План и Факт.

4. Создать кнопку «Вычислить».

5. Под кнопкой «Вычислить» создать надпись для области результата.

6. Ввести код процедуры, обрабатывающей нажатие кнопки «Вычислить».

7. Сохранить форму и проект в папке на диске D:.

Анализ проекта

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

Для выполнения вычислений в правой части оператора присваивания используется функция CSng(), преобразующая строковое значение к типу Single.

Для реализации разветвления применяется расширенная форма условного оператора.

При формировании сообщения о результатах вычислений употребляется операция сцепления строк &. Для представления численного значения результата strОтклонение с точностью до двух разрядов в дробной части используется функция Format.

Вывод результата осуществляется путем присвоения надписи lblРезультат значения переменной strОтклонение, которая содержит текст сообщения.

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

 

MsgBox <Сообщение>

 

Выполнение этого оператора приводит к появлению диалогового окна с указанным текстом (рис. 5.4). В нашем случае строку в коде

 

lblРезультат = strОтклонение

 

нужно заменить строкой

 

MsgBox strОтклонение

 

 

Рис. 5.4. Вывод результата с использованием оператора MsgBox

 

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

 

'Обработка ошибки

If (txtПлан = "") Or (txtПлан = "0") Then

MsgBox "Не задан план"

Exit Sub

End If

 

Здесь использована краткая форма оператора If.

Проверка обоих условий основана на том, что значение текстового поля имеет тип String (константа "" обозначает пустую строку, а «0» – что в поле txtПлан введен ноль).

Условие после слова If выполняется (то есть имеется ошибка), если выполняется хотя бы одно из условий, поэтому два условия связаны логической операцией Or.

В случае обнаружения ошибки выводится сообщение оператором MsgBox, а затем происходит выход из процедуры обработки события нажатия на кнопку «Вычислить» благодаря наличию оператора Exit Sub. Поэтому при обнаружении ошибки вычисления не производятся, но выполнение приложения продолжается. Пользователь имеет возможность ввести значение плана или прекратить выполнение приложения, закрыв его окно.



Дата добавления: 2020-10-14; просмотров: 346;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.012 сек.