Механізми передачі параметрів.

Виконуючи інструкцію виклику підпрограми з параметрами, транслятор здійснює, так звану передачу параметрів у підпрограму. Для розуміння суті цього процесу важливо розрізняти формальні і фактичні параметри.

  • Формальним параметром (аргументом) процедури чи функції називають змінну, записану в списку аргументів при описі процедури (функції). Формальні параметри використовують для формального запису дій, які повинна виконати підпрограма із конкретними даними, які вона отримуватиме під час виклику з основної програми.
  • Фактичним параметром (аргументом) процедури чи функції називають конкретне значення, яке вона отримує під час виклику з основної програми і з яким виконує закладені в собі дії.
Read More

Візуальні елементи та діалог користувач-комп’ютер

Сьогодні більшість користувачів ПК, мабудь, не можуть собі уявити комп’ютерну програму, в якій не можна виконати будь-яку дію, натиснувши клавішу миші над тим, чи іншим графічним елементом. Графічний інтерфейс (GUI), завдяки своїй зручності, став головним способом реалізації діалогу між користувачем та програмою. Дії, які може виконувати програма, зібрані у вигляді набору пунктів графічного меню вікна програми, для часто використовуваних команд виводяться візуальні кнопки на так званих “панелях інструментів”, параметри виконання команд задаються за допомогою графічних елементів керування у вікнах діалогу і т.д.

Read More

Створення дизайну діалогових вікон.

Використання діалогів у OOo Basic надає користувачеві можливість створювати потрібні йому вікна для відображення чи вводу найрізноманітнішої інформації. Візуальний об’єкт Dialog є базою, на якій, залежно від виду відображуваної інформації, потрібно розмістити ті чи інші елементи керування. Діалоги містяться у бібліотеках разом з модулями макросів. Додати до існуючої бібліотеки новий діалог можна з вікна керування макросами на закладці “Діалоги” (Dialogs).

Read More

Урухомлення діалогу та завершення його роботи.

Для тих, хто мав справу зі створенням діалогових вікон у середовищі Microsoft Office спосіб запуску діалогів OOo Basic видається складним незвичним. Справа в тому, навіть команда запуску макроса у редакторі має назву “Run Sub/UserForm”, тобто запуск діалогового вікна на виконання є чимось само собою зрозумілим. Ця “перевага” VBA, звичайно, зручна на етапі проектування, програмування та налагодження проектів, але в готовому до використанні проекті, очевидно, вікна діалогу все одно повинні викликатися програмно з коду макросів.

Read More

Використання елементів керування.

Open Office org Basic, так само як і VBA, має вбудований набір елементів керування. Використовуючи цей набір і редактор діалогів можна створити практично будь-який інтерфейс користувача для власного проекту. Більшість елементів керування можна використовувати як для створення вікон діалогу так і безпосередньо на робочих листах та сторінках документів. Якщо потрібно розмістити керуючі елементи в робочій області документа, то для цього використовують панель інструментів Елементи керування (Form Control). На цій панелі знаходяться кнопки, що дозволяють вибирати елементи керування, а також кнопка виклику вікна їх властивостей.

Read More

Деякі властивості та методи елементів керування.

Щодо використання властивостей та методів елементів керування, то в літературі з програмування на OOo Basic, зазвичай, можна зустріти доволі заплутану розповідь про сервіси та інтерфейси, які підтримує той чи інший елемент. Далі наводиться майже повний список властивостей та методів кожного із згаданих сервісів та інтерфейсів. Такий підхід відлякує не тільки початківців, а навіть досвідчених VBA-програмістів. Read More

Використання подій елементів керування.

Події об’єктів, зокрема, елементів керування, дають їм можливість реагувати на дії користувача запуском відповідних частин програмного коду, у нашому випадку – макросів. Щодо використання подій, OOo Basic принципово відрізняється від VBA, де критерієм того, що макрос призначений для обслуговування певної події деякого об’єкта є специфічна структура імені макроса: &#60Назва об’єкта&#62_&#60Назва події&#62. Так, наприклад, команди макроса
Sub CommandButton1_Click()

End Sub

виконуватимуться у випадку виникнення події Click (клацання лівою клавішею миші на об’єкті) для елемента CommandButton1 (Кнопка).

У OOo Basic такого впливу назви макроса на обробку подій елементів керування не закладено. Тут доводиться спеціально закріпляти той чи інший макрос за подією. Read More

Використання подій додатків для запуску макросів.

В літературі з програмування на Visual Basic for Applications можна знайти чимало чудових прикладів, які демонструють як із звичайного офісного документа за допомогою макросів можна створити майже самостійну інформаційну систему чи інший програмний продукт. Макроси можуть відкривати-закривати документи та файли, звертатися із запитами до баз даних, запускати додатки офісних пакетів, тощо. В таких прикладах зустрічається доволі багато макросів, що запускаються самостійно при виникненні певної події. Read More

Об’єкти UNO. Сервіси і інтерфейси.

Сучасні пакети офісних програм є продуктом об’єктно-орієнтованого програмування і, як наслідок, складними структурами різноманітних об’єктів: вікон, меню, панелей інструментів, робочих листів, комірок, діаграм і т. п. Кожен об’єкт має свої властивості, набір методів для відтворення та зміни цих властивостей та визначені події, що дозволяють запускати на виконання той чи інший метод. Пересічний користувач електронної таблиці, що вводить число 5,67 в комірку В3 і натискає клавішу “Enter” не замислюється над тим, що своїми діями він створює для цієї комірки певну подію, внаслідок якої комірка виконує відповідний метод, що змінює її властивість — вміст, в даному випадку. Якщо для ефективного використання програмного подукту розуміння його об’єктної структури не є таким вже і важливим, то для створення повнофункціональних макросів воно є просто необхідним. Володіння навичками роботи з об’єктною моделлю програми дає можливість перетворити макроси із засобів для розв’язання простих арифметичних задач на механізми, що дозволяють справді автоматизувати роботу її користувача.

Read More

StarDesktop та керування документами.

З точки зору написання макросів в об’єктній моделі офісних додатків цікавими, в першу чергу, є об’єкти, які дають доступ до документів та їх складових. Головним в цьому наборі завжди є об’єкт який визначає саму програму-додаток, наприклад, Application є головним об’єктом в об’єктній ієрархії додатків Microsoft Office. В Open Оffice для цього використовується сервіс com.sun.star.frame.Desktop і, насамперед, глобальна змінна StarDesktop, яка зберігає посилання на основний об’єкт програми, що підтримує цей сервіс. Цей об’єкт підтримує ще декілька сервісів та багато інтерфейсів, але для початківця достатньо знати, що будь-яке повне звертання до властивостей чи методів об’єктів, з яких складаються додатки Open Office, зазвичай, починається з імені StarDesktop.

Read More