Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОБЩИЙ_файл_ПОСОБИЕ.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
22.69 Mб
Скачать

Інтерфейс проекту

Для відображення вихідних даних, результатів розрахунків і організації взаємодії користувача із програмним кодом розробляється форма (рис. 5.19).

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

На формі використані такі елементи управління:

напис (Label) – для позначення найменування даних, що вводяться, і результатів розрахунків;

текстові поля (TextBox) – для введення вхідних даних і виводу проміжних результатів;

прапорець (CheckBox) – для позначення факту наявності знижки на обсяг покупки;

перемикач (OptionButton) – для вибору типу покупця (з метою однозначного вибору, перемикачі об'єднані контейнером (Frame) у групу "Покупці");

лінійка прокрутки (ScrollBar) – для зазначення поточного (системного) дня тижня;

кнопки (CommandButton) – для запуску процедур розрахунку (CmdРозрахунок) і очищення результатів обчислень (CmdОчистити).

Основні властивості форми й елементів управління представляються таблицею, аналогічною табл. 5.8.

Взаємодія користувача з формою здійснюється в такий спосіб. При запуску програми на виконання (подія завантаження форми) у текстові поля TxtДата й TxtЧас виводяться поточна дата й час, заповнюються значення текстових полів, що відповідають розмірам знижок на тип покупця (TxtЗвичайний, TxtОптовий, TxtПільговий) і на день тижня (TxtПн, TxtВт, TxtСр, TxtЧт, TxtПт, TxtСб, TxtНд), а також граничне значення вартості (TxtПоріг) і розмір знижки при перевищенні граничного значення вартості (TxtЗнижка1).

Після введення значень ціни й кількості придбаного товару необхідно клацнути по кнопці CmdРозрахунок (подія клацання). Відбувається обчислення суми до сплати за товар, що придбається, з урахуванням знижок на обсяг покупки, тип покупця і день тижня та вивід результату розрахунку в текстове поле TxtОплата.

Користувач вводить у текстове поле TxtГотівка кількість готівки і у випадку, коли її достатньо для розрахунку в текстове поле TxtЗдача виводиться значення здачі, а в LblРезультат – повідомлення про результати покупки. Якщо готівки недостатньо, користувачеві видається повідомлення про суму, яку необхідно доплатити, і текстове поле TxtГотівка підсвічується червоним кольором. При натисканні на кнопку CmdОчистити відбувається підготовка робочого місця до роботи.

Код проекту

Для реалізації завдання в коді проекту необхідно передбачити обробку таких процедур:

1) завантаження (ініціалізація) форми;

2) обчислення суми до сплати за куплений товар;

3) розрахунок здачі й вивід результату;

4) підготовка робочого місця до обслуговування наступного покупця.

Тексти відповідних процедур представлені далі.

Завантаження форми (введення вхідних даних, установка системного часу й дати)

На рис. 5.20 представлений програмний код процедури установки на формі системного часу й дати, введення вхідних даних (значень знижок і граничного значення вартості), а також установка движка лінійки прокрутки на поточний день тижня. Дана операція реалізується при настанні події – завантаження форми (натискання на панелі управління кнопки Run Sub/UserForm).

Private Sub UserForm_Initialize()

'Установка движка лінійки прокрутки на поточний день тижня

If Weekday(Date) = 1 Then ScrlТиждень.Value = 7 Else _

ScrlТиждень.Value = Weekday(Date) – 1

'Заповнення полів значення знижок

TxtЗвичайний.Text = 0

TxtОптовий.Text = 5

TxtПільговий.Text = 10

TxtПоріг.Text = 100

TxtПн.Text = 0

TxtВт.Text = 1

TxtСр.Text = 2

TxtЧт.Text = 3

TxtПт.Text = 4

TxtСб.Text = 5

TxtНд.Text = 6

TxtЗнижка1.Text = 2

'Вивід системного часу й дати

Dim DtmSegodnya As Date

Dim DtmPotChas As Date

DtmSegodnya = Date

DtmPotChas = Time

TxtДата.Text = FormatDateTime(DtmSegodnya, vbShortDate)

TxtЧас.Text = FormatDateTime(DtmPotChas, vbLongTime)

End Sub

Рис. 5.20. Процедура завантаження форми

Обчислення суми до сплати за вибраний товар.

На рис. 5.21 представлений програмний код процедури розрахунку суми до сплати за вибраний товар з урахуванням знижок при настанні події – клацання по кнопці на формі CmdРозрахунок.