СОЗДАНИЕ ГРУППЫ ЭКРАННЫХ ФОРМ
Теоретические сведения. При создании приложений одной экранной формы бывает не достаточно, причём вызов этих экранных форм осуществляется не через меню, то есть независимо друг от друга, а в определённой последовательности одна из другой. В этом случае возникает необходимость создания группы экранных форм. Механизм создания группы экранных форм с использованием конструктора форм очень прост. В конструкторе форм выбирается команда Create Form Set меню Form. При этом будет создана группа экранных форм, включающая одну форму Form1, окно конструктора которой на экране. Для добавления в группу экранных форм очередной формы вызывается команда Add Form меню Form. При этом для добавления формы в нужное место иерархии форм должна быть выбрана форма, в которую добавляется новая. Для осуществления доступа к форме в группе форм при работе приложения необходимо выполнить команду (предполагается, что Вы знакомы с принципами объектно-ориентированного программирования, с понятиями объектов, свойств и методов объектов): Thisformset.forms(номер формы в списке форм группы).метод/свойство формы Например, чтобы скрыть первую форму на экране и показать вторую нужно выполнить действия: THISFORMSET.FORMS(1).HIDE THISFORMSET.FORMS(1).SHOW При выполнении данной лабораторной работы понадобится знание методов форм для вывода графических объектов, это методы для изображения линий (Line) и прямоугольника (Box) подобный формат которых можно посмотреть в Help, методов: очистить форму (Clear), сделать видимой (Show) и невидимой (Hide), освободить память от формы (Release). Для доступа к нужному методу или свойству формы делается ссылка на текущую форму, а затем указывается свойство или метод формы: THISFORM.имя свойства/имя метода Кроме стандартных свойств и методов формы пользователь может создать свои свойства и методы на уровне формы. Для этого вызываются команды New Property, New Method пункта меню Form.
Задание на лабораторную работу.
1. Создать объект - группу экранных форм, состоящую из двух экранных форм. В первой форме, которая при запуске приложения появляется на экране, вводятся координаты x и y двух точек и имеются кнопки с надписями: линия, прямоугольник, выход. Во второй форме имеется одна кнопка с надписью ввод. Нажав кнопку с надписью ‘линия’ первая форма исчезает, делается видимой вторая форма, в которой рисуется линия по точкам, координаты которых введены в первой форме. Нажав кнопку с надписью ‘прямоугольник’ первая форма исчезает, делается видимой вторая форма, в которой рисуется прямоугольник по точкам, координаты которых введены в первой форме. Нажав кнопку с надписью ‘ввод’ во второй форме вторая форма исчезает с экрана и появляется первая. При нажатии на кнопку с надписью “выход” на экране стандартное меню FoxPro и память освобождается от обеих форм. 2. В форму по работе с базой данных “Сведения о студентах” добавить новое свойство – ограничение на число записей по результатам сессии для одного студента – 10 (так как число учебных семестров 5) и добавить новый метод, возвращающий TRUE, если текущее число сессий для данного студента меньше или равно значению нового свойства и FALSE в противном случае. Этот новый метод использовать в объекте Grid (то есть сведения о сессии) и, если при добавлении в объект очередной записи ограничение не выполняется, вывести сообщение, что нельзя ввести новую запись о результате сессии для данного студента. Для вывода сообщения можно использовать команду MessageBox(текст сообщения).
Вопросы.
1. Что собой представляет объект группа экранных форм? 2. Каким образом можно обратиться при работе приложения к конкретному методу или свойству одной из форм группы экранных форм? 3. Каким образом создаётся группа экранных форм? 4. Каким образом добавить новое свойство и новый метод в форму?
|