такого типу. Вони називаються спливаючими формами.
Наприклад, якщо "Головна кнопкова форма", з якої можна виконати основні дії в додатку, невелика і не закриває більшість інших форм, її можна зробити спливаючою, щоб вона була доступна у будь-який час.
Щоб форма володіла такою властивістю, необхідно присвоїти значення Так (Yes) властивості Спливаюче вікно (PopUp), яка знаходиться на вкладці Інші (Other) вікна властивостей форми.
Спливаюча форма може також бути модальною, якщо властивість Модальне вікно (Modal) цієї форми має значення Так (Yes). Модальна форма відрізняється тим, що поки вона відкрита, ви не можете перемістити фокус на інший об'єкт — форму, меню, кнопку панелі інструментів, тобто інші об'єкти стають недоступними.
Модальні форми зазвичай використовуються для створення спеціальних діалогових вікон, які запрошують у користувача деяку інформацію. Для того, щоб виконувати інші завдання, користувач повинен ввести цю інформацію і закрити форму. Зазвичай в такому вікні встановлюють властивості Кнопка віконного меню (ControlBox), Кнопки розмірів вікна (MinMaxButton) і Кнопка закриття (CloseButton) таким чином, що ці кнопки не виводяться. Зате в самій формі створюють дві кнопки: ОК і Відміна (Cancel). Кнопка ОК дозволяє виконати подальші дії і закриває форму. Кнопка Відміна закриває форму і виконує всі дії по перериванню виконуваної операції. Для цього створюються програми VBA або макроси, які зв'язуються з подією Натиснення кнопки (Click) кожної кнопки.
Зазвичай для спливаючих вікон змінюють властивість Тип межі (Border Style), яке за умовчанням має значення Змінна (Sizable). Для немодальної спливаючої форми зазвичай встановлюють для цієї властивості значення Тонка (Thin). При цьому спливаючу форму можна переміщати по екрану, але не можна змінити її розміри. Для модальної форми зазвичай встановлюють для властивості Тип межі значення Вікно діалогу (Dialog). При цьому автоматично відключаються кнопки розмірів вікна (але кнопку закриття вам доведеться відключити уручну, якщо це потрібно), тому вона не може бути розгорнута на весь екран, згорнута в значок і просто змінена в розмірах.
4. Використання обчислень у формах
Обчислення у формах використовуються:
1. При створенні обчислюваних полів, тобто таких елементів управління, значення яких розраховуються на основі значень інших елементів управління або вбудованих функцій.
2. Для розрахунку значення за замовчуванням елементів управління форми.
3. У виразах, за допомогою яких задаються деякі властивості елементів управління, наприклад, перевірка умов на значення, визначення умов відбору записів у формі і ряд інших.
4.1 Створення обчислюваних полів
Простим обчислюваним полем є поле, в якому повинна виводитися поточна дата. Щоб створити таке поле потрібно:
1. Створити вільний елемент управління типу Поле (Text Box) в потрібному місці форми. Прямо у полі ввести вираз =^Date () (знак рівності обов'язковий).
2. Відкрити вікно Властивості (Properties) для цього елементу і задати у властивості Формат поля (Format) бажаний формат дати, наприклад Довгий формат дати (Long Date).
3. Встановити довжину поля так, щоб в нім поміщалася потрібна кількість символів.
4. Змінити назву мітки нового текстового поля. Нове поле виглядатиме так, як показано на рис.16.
Рис.16. Створення обчислюваного поля
Зазвичай для обчислюваних полів використовується саме текстове поле, хоч і не обов'язково. Допускаються будь-які елементи управління, що мають властивість Дані (Control Source).
Саме у властивості Дані повинен бути заданий вираз, який обчислює значення даного поля. Введення виразу допускається прямо в елемент управління, якщо воно коротке і довжина поля це допускає. Інакше вираз вводиться в рядок властивості Дані вікна Властивості (Properties). При цьому можна скористатися конструкторм виразів, а якщо вираз не поміщається в рядку властивості, потрібно натиснути клавіші <Shiftl>+<F2> і відкрити вікно Область введення (Zoom).
Обчислювані поля створюються найчастіше в табличних або стрічкових формах для відображення стовпця, дані в якому розраховуються. Наприклад, вартість товару розраховується як ціна * Кількість. Для відображення таких розрахункових даних використовують два способи.
Перший спосіб заснований на тому, що форма будується на базі запиту, в який включають обчислювані стовпці. У формі створюється текстове поле, у якого як джерело даних вказується обчислюваний стовпець запиту. Поле блокується, щоб користувач не міг змінитидані в ньому. Дані, що виводяться в полі, обчислюються в процесі виконання запиту.
У другому випадку форма може будуватися прямо на базі таблиці. У ній створюється текстове поле, в якому як джерело даних указується вираз, наприклад = [Ціна за одиницю] * Кількість. При цьому у виразі можуть указуватися не обов'язково ті поля, які включені у форму, а будь-які поля базової таблиці.
4.2. Створення обчислюваних полів для відображення підсумкових значень
Можна створити обчислювані поля у формі, які міститимуть підсумкові значення для декількох записів. Наприклад, потрібно розрахувати суму рахунку або замовлення, підсумувавши дані по кожній позиції рахунки.
Для цього потрібно:
1. Створити в області приміток підлеглої форми, що містить позиції замовлення, обчислюване текстове поле. Значення цього поля і повинно містити підсумкову суму. У формі "Підлегла форма замовлень" це поле розраховується як сума значень поля "Відпускна ціна" для всіх позицій замовлення (рис.17).
2. Оскільки це поле не відображається, коли форма виводиться на екран в режимі таблиці, потрібно в головній формі створити ще одне обчислюване поле, для якого як джерело даних слід вказати підсумкове поле підлеглої форми (рис.18).
Рис.17. Обчислення підсумкового значення
Рис.18. Створення обчислюваного поля в головній формі
Особливістю створення підсумкового поля в підлеглій формі є те, що у функції sum. не можна використовувати ім'я обчислюваного елементу управління і можна використовувати тільки ім'я обчислюваного поля в базовому запиті. Якщо ж підсумовувані значення обчислюються прямо у