Создание панели инструментов
Панели инструментов являются неотъемлемой частью приложений Windows. Visual FoxPro также позволяет разрабатывать класс панели инструментов и использовать его при создании объекта панели инструментов. Этот объект может использоваться в формах для управления перемещением по записям, поиска данных и т. п.
В качестве примера создадим класс панели инструментов, предназначенный для просмотра данных таблицы. На панели содержатся кнопки перемещения по записям и выхода из формы. Выполните следующие действия:
Откройте проект sales.
В окне проекта перейдите на вкладку Classes (Классы) и нажмите кнопку New (Новый).
В диалоговом окне New Class (Новый класс) выберите базовый класс Toolbar (Панель управления), введите имя класса bстаblетооlваr и укажите пользовательскую библиотеку классов ForForms, а затем нажмите кнопку ОК. В окне конструктора классов появляется панель инструментов, не содержащая ни одного объекта.
Используя ранее созданные классы кнопок, разместите на создаваемой панели инструментов графические кнопки перемещения по записям и выхода из формы (рис. 19.30).
Рис. 19.30. Создание класса панели управления для перемещения по записям таблицы
После создания класса панели инструментов кет необходимости размешать в формах кнопки перемещения по записям. Вместо них можно при инициализации формы создавать панель инструментов и использовать ее для перемещения по записям и выхода из формы. Рассмотрим пример создания формы, в которой для перемещения по записям используется панель инструментов:
Откройте проект sales.
В окне проекта перейдите на вкладку Classes (Классы) и нажмите кнопку New (Новый).
В открывшемся диалоговом окне New Class (Новый класс) в поле ввода Class Name (Имя класса) введите имя создаваемого класса bcSingleTableToolbar. Из списка Based On (Базовый класс) выберите базовый класс Form (Форма), а затем в поле ввода Store In (Сохранить в) введите имя библиотеки классов Forms (Формы), в которой будет храниться создаваемый класс.
Разместите в форме текст заголовка и объект Grid (Таблица).
Нам необходимо создать в форме объект типа панель инструментов на основе созданного в предыдущем примере класса. Для этого определите новое свойство oTooiBar формы, выполнив команду New Property (Новое свойство) из меню Class (Класс), а затем в методе Activate (Активизация) формы создайте объект типа панель инструментов и отобразите его на экране:
* Создаем панель инструментов
_screen.ActiveForm.oToolBar=CREATEOBJECT("bcTableToolBar")
* Отображаем панель инструментов на экране _screen.ActiveForm.oTooiBar.Show()
Результат выполненных действий показан на рис. 19.31. Сохраните созданный класс и закройте окно конструктора классов.
Теперь приступим к созданию формы на основе созданного в этом примере класса. Для этого откройте диалоговое окно Options (Параметры), перейдите на вкладку Forms (Формы) и установите в поле ввода Form (Форма) имя пользовательского класса bcSingieTabieTcoibar из библиотеки Forms (Формы).
Откройте проект sales.
В окне проекта выберите вкладку Documents (Документы), перейдите в раздел Forms (Формы) и нажмите кнопку New (Новый). На экране откроется окно конструктора форм, которое содержит объекты класса bcSingleTableToolbar. Обратите внимание на то, что в форме панель инструментов отсутствует. Она создается при запуске формы на выполнение.
Рис. 19.31. Создание класса формы, в которой используется панель инструментов
Рис. 19.32. Использование панели инструментов для просмотра таблицы
Выберите текстовый объект, расположенный в верхней части формы, и измените его свойство caption (Надпись), введя Просмотр информации о клиентах.
Добавьте в окружение формы таблицу Customer.
Установите свойства объекта Grid (Таблица). Для этого свяжите столбцы таблицы с полями таблицы Customer и определите заголовки столбцов.
На этом создание формы заканчивается. Сохраните ее и запустите на выполнение. На рис. 19.32 вы видите созданную форму в режиме выполнения.
Совет
Если при запуске данной формы на выполнение появляется сообщение о том, что. класс bcTableToolBar не найден, вам необходимо в методе Activate (Активизация) формы перед созданием объекта типа панель инструментов вставить команду set classlib to с указанием папки расположения класса.
Содержание раздела