Свойства объектов, созданных на основе базовых классов

ПЕРЕЛІК ПИТАНЬ

до семестрового екзамену з дисципліни

“ Інструментальні засоби візуального програмування ”

2011/2012 навчальний рік.

 

 

1. Принципи об’єктно-орієнтованого візуального програмування

2. Мови об’єктно-орієнтованого візуального програмування.

3. Інтегроване середовище розробки Borland C++.

4. Класифікація елементів Borland C++..

5. Структура програми Borland C++.

6. Принципи роботи інтегрованого середовища прикладних програм.

7. Властивості компонентів.

8. Методи та події.

9. Компоненти бібліотеки (VCL)

10. Застосування бібліотеки візуальних компонентів

11. Компоненти введення та відображення текстової інформації.

12. Компоненти введення та відображення чисельної інформації.

13. Компоненти введення та відображення дати та часу.

14. Компоненти відображення графічної та мультимедійної інформації

15. Призначення елементів керування.

16. Застосування елементів керування.

17. Компоненти-панелі.

18. Призначення системних діалогів.

19. Різновиди повідомлень.

20. Застосування обробників повідомлень.

21. Підпрограми.

22. Використання шаблонів.

23. Використання дипозитаріїв.

24. Компоненти користувача.

25. Внесення компонентів до VCL.

26. Інтерфейс користувача.

27. Використання меню користувача.

28. Налаштування інтерфейсу користувача.

29. Створення панелі інструментів.

30. Налаштування форм.

31. Створення форм.

32. Призначення діалогових вікон .

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

34. Застосування типу документ/вид.

35. Призначення застосування типу документ/вид.

36. Додаткові можливості системи Borland C++

37. Довідкова система.

38. Дистрибутивні пакети

39. Використання дистрибутивних пакетів

40. Windows GDI.

41. Використання Windows GDI.

42. Зв'язок з базами даних.

43. Застосування для керування базами даних.

44. Використання ODBC.

45. Застосування ADO.

46. Компоненти для роботи з БД.

47. Оголошення і визначення функцій. Значення, що повертає функція.

 

Будь-яка програма на С++ складається з функцій. Навіть найпростіша програма містить функцію main().

Це цілком відповідає модульному принципу процедурного програмування, відповідно до якого вихідна задача

повинна бути розбита на декілька більш спеціалізованих підзадач. Рішення цих конкретних задач покладається

на функції. Розглянемо спочатку основні поняття, зв'язані з функціями.

6.1..1. Основні поняття

Кожна функція повинна мати оголошення і визначення. Оголошення функції називається її прототипом.

Загальний вид прототипу виглядає в такий спосіб.

тип_значення_що_повертається ім'я_функції(тип_параметра1,

... ,

тип_параметра N);

Будь-яку функцію можна подати у вигляді “чорної шухляди”, у який передається список фактичних

аргументів, можливо порожній, а у відповідь повертається обчислене значення зазначеного типу. У мові С++

функція може повернути тільки одне значення.

Список типів, зазначений у прототипі функції, являє собою перерахування типів її формальних параметрів,

розділених комами. Якщо функція нічого не одержує ззовні, цей список порожній. Імена параметрів у прототипі

вказувати необов'язково. Крім того, типи параметрів можна модифікувати ключовим словом const. Іноді ім'я

змінної допомагає швидше знайти помилку, що виникла при компіляції програми. Зверніть увагу на те, що

кожний формальний параметр функції повинний бути оголошений окремо. Кількість, порядок і типи

формальних параметрів утворять профіль параметрів функції. У свою чергу профіль і тип значення, що

повертається, є протоколом функції. Не забувайте: прототип завжди повинний завершуватися точкою з комою!

Ім’я і профіль функції утворюють її сігнатуру.

Для реалізації функції необхідно виконати її визначення, що має наступний вид.

тип_значення_що_повертається ім'я_функції(

тип_параметра1 ім'я_параметра1,

... ,

тип_параметра ім'я_параметра)

{

тіло функції

}

Тип значення, що повертається, ім'я функції і список формальних параметрів утворюють заголовок функції.

Прототип і заголовок функції повинні збігатися.

Фігурні дужки обмежують тіло функції, що складає з операторів, що розв’язують поставлену задачу. Крім

того, фігурні дужки є межами області видимості всіх змінних, оголошених усередині тіла функції (такі змінні

називаються локальними). Ця область закрита від зовнішнього світу, і доступ до неї з інших функцій

неможливий. Вся інформація може надходити ззовні лише по двох каналах: через фактичні параметри, чи

аргументи, що представляють собою значення формальних параметрів, і через глобальні змінні, які є видимими

в будь-якій точці програми.

Локальні змінні існують лише під час виконання функції. Вони створюються при її виклику і знищуються

при поверненні керування в модуль, звідки зроблено виклик. Однак існує можливість зберегти значення

локальних змінних між викликами функцій — оголосити такі змінні статичними (див. лекцію 3, розділ 3.3.1).

У мові С++, на відміну від мови Pascal, вкладені функції не допускаються.

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

усередині дужок — список аргументів. Лекція 6 Функції 2

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

призначені для того, щоб приймати значення аргументів. Як і локальні змінні, вони створюються при виклику

функції і знищуються при виході з неї. Розглянемо приклад, що ілюструє поняття виклику, параметрів і

аргументів.

Виклик функції

#include <iostream.h>

int maxint(int, int); // Прототип

int main()

{

int var1, var2;

cin >> var1; // Введення аргументу var1

cin >> var2; // Введення аргументу var2

int maxvar = maxint(var1,var2); // Виклик функції maxint()

cout << maxvar; // Висновок значення, повернутого функцією maxint()

return 0;

}

int maxint(int var1, int var2) // Заголовок функції

{

return var1>=var2 ? var1 : var2; // Тіло функції

}

Функція maxint() має два параметри: var1 і var2. Вона повертає максимальне з двох отриманих

значень. Як бачимо, дана функція не створює власних локальних змінних. Замість цього вона оперує

формальними параметрами. Помітимо також, що в даному випадку функція повертає цілочисельне значення,

отже, вона може знаходитися там, де очікується ціле число: у правій частині оператора присвоювання, як у

даному варіанті, чи в оголошенні цілочисельної змінної для її ініціалізації. Наприклад, програму можна було б

спростити, виключивши проміжну змінну maxvar. Замість цього повернуте значення можна було б відразу

вивести на екран оператором <<.

cout << maxint(var1, var2);

 

48. Параметри функцій. Способи передачі параметрів у функцію.

49. Передача масивів у функцію в якості параметрів.

50. Використання базових класів для створення форм.

 

При создании форм мы широко использовали базовые классы, список которых содержится на панели инструментов конструктора формы. Для создания объектов на основе базового класса достаточно выбрать его на панели инструментов, поместить в требуемом месте, а затем определить свойства и методы созданных объектов. Созданный объект будет обладать всеми характеристиками базового класса. Пример создания объекта на основе базового класса Grid (Таблица) показан на рис. 19J.

Для создания новых объектов можно использовать не только конструктор форм, но и функцию CREATEOBJECT, которая имеет следующий синтаксис:

CREATEOBJECT(имяКласса [, параметр1, параиетр2, ...])

Функция CREATEOBJECT возвращает идентификатор созданного объекта, который вы можете применять для ссылки на него. Например, для создания формы, определения ее заголовка и отображения формы на экране необходимо выполнить следующую последовательность команд:

frmNew=CREATEOBJECT("FORM")

f rmNew. Caption="Заголовок формы"

f rmNew.Show()

Рис. 19.1. Создание объекта в конструкторе форм

Свойства объектов, созданных на основе базовых классов

Объект, созданный на основе базовых классов, наследует его свойства, методы и обрабатываемые события. Свойства подобны переменным, однако в отличие от последних, они не существуют вне объекта.

Возможность изменения свойств объектов в Visual FoxPro является мощным инструментом управления данными в интерактивном режиме. Например, вы можете:

· изменить свойства формы (заголовок, размер, цвет, расположение и т. п.);

· изменить цвета полей ввода, тип их отображения, цвет и формат выводимой в них информации;

· запретить ввод информации в поля, переход на них или же сделать их невидимыми и многое другое.

Для того чтобы определить какое-либо из свойств объекта в интерактивном режиме, вам необходимо выделить требуемый объект, после чего выполнить одно из следующих действий:

· в меню View (Вид) выбрать команду Properties (Свойства);

· нажать правую кнопку мыши и из контекстного меню объекта выбрать команду Properties (Свойства).

В результате на экране появляется окно свойств текущего объекта (рис. 19.2). Свойства объектов могут принимать символьные, логические и числовые значения. Некоторые из них могут принимать произвольные значения (например, заголовок поля, его координаты). Другие свойства могут принимать значения из определенного списка.

Рис. 19.2. Окно свойств объекта

При программировании вы можете определить свойство объекта, указав имя объекта и имя свойства, которые разделяются точками. Для изменения свойства достаточно присвоить ему допустимое значение. Например:

* присваиваем заголовку формы значение переменной cName

frmNew. Caption = cName

Язык Visual FoxPro позволяет вам устанавливать не только свойства отдельных объектов, но и определенной группы объектов.

Для этого используется конструкция WITH .. . ENDWITH, которая имеет следующий синтаксис:

WITH имяОбгьекта [,имяОбгьекта]

[.имяСвойства = выражение]

ENDWITH

Например, вы можете установить одинаковый цвет для группы объектов:

WITH cmdNext, cmdPrev

.ForeColor=RGB(0,0,0)

.BackColor=RGB(255,255,255)

ENDWITH

Используя язык Visual FoxPro, можно изменять свойства объектов не только на этапе их создания, но и в процессе выполнения программы. Например, вы можете при переходе из режима просмотра в режим редактирования изменить заголовок формы "Просмотр списка клиентов", который является одним из свойств формы, на "Редактирование списка клиентов".

Замечание

Свойства, определенные для объектов с помощью окна свойств или программным путем, сохраняются в описании формы. Поэтому, если во время одного сеанса работы вы изменили свойства объектов, они сохранятся до следующего изменения. Изменение свойств объекта не приводит к генерации события, за исключением изменения свойства Value (Значение).

Visual FoxPro позволяет не только использовать свойства, наследованные из базового класса, но и создавать новые, которые можно использовать для хранения характеристик объекта и связанных с ним данных.

Чтобы создать новое свойство объекта, используйте диалоговое окно New Property (Новое свойство) (рис. 19.3), которое открывается при выполнении команды New Property (Новое свойство) из меню Form (Форма). В этом диалоговом окне необходимо задать имя создаваемого свойства и описание.

В диалоговом окне New Property (Новое свойство) находятся флажки, определяющие возможности, приведенные в табл. 19.4.

Таблица 19.4. Флажки диалогового окна New Property

Флажок Назначение
Access Method (Метод доступа) Если установлен этот флажок, то для данного свойства будет автоматически создан метод Access (Доступ)
Assign Method (Метод назначения} Если установлен флажок, то для этого свойства будет автоматически создан метод Assign (Назначение)

Созданное вами свойство отображается на вкладке Other (Другие) окна свойств объекта. Далее вы можете присвоить созданному свойству требуемое значение в окне свойств объекта или программным путем и использовать его при выполнении приложения.

Рис. 19.3. Диалоговое окно New Property