Создание набор кнопок
Инструмент Command Groupпанели инструментов «Form Controls» используется в том случае, если вам необходимо создать сразу несколько управляющих кнопок. Объект данного типа обладает свойством ButtonCount, которого не имели ранее рассмотренные объекты. Это свойство объекта определяет количество кнопок или команд, размещенных в объекте.
Разместим в форме GetCust кнопки перемещения по записям таблицы, а также кнопку выхода из формы.
1. Откройте форму GetCust в окне конструктора форм.
2. Выберите инструмент Command Groupна панели инструментов «Form Controls» и поместите объект в нижней части формы.
3. Откройте окно свойств созданного объекта.
4. Свойство ButtonCountобъекта определяет количество кнопок, размещаемых в объекте. По умолчанию свойство содержит значение, равное 2. Скорректируйте его, задав количество кнопок, равное 5.
5. Увеличьте с помощью мыши размеры созданного объекта, чтобы в нем разместились все пять кнопок.
6. Для того чтобы расположить все кнопки горизонтально, необходимо перейти в режим редактирования созданного объекта. Для этого установите курсор мыши внутрь объекта, нажмите правую кнопку мыши и выберите пункт Edit всплывающего меню.
7. В режиме редактирования объекта типа CommandGroup, поочередно выделяя каждый элемент группы, переместите их, расположив горизонтально вдоль одной линии. Для выхода из режима редактирования после завершения перемещений, нажмите мышью пространство вне области объекта типа Command Group. Скорректируйте размер внешней рамки объекта под новое расположение кнопок.
8. Откройте окно свойств объекта типа CommandGroup. Нажмите кнопку раскрытия списка в верхней части данного окна. Отметьте, что этот список содержит все элементы, входящие в созданный объект. Выбирая в этом списке поочередно каждый элемент, можно изменить его свойства.
9. Скорректируйте для каждого элемента объекта свойство Caption, задав название кнопок: Первая, Следующая, Предыдущая, Последняя, Выход.
10. Определите команды, которые будут выполняться при их нажатии. Для каждого элемента, входящего в составной объект, в окне процедур метода Click поместите следующие команды.
Для кнопки Первая:
*Переходим на первую запись и перевыводим значения полей
IF !BOF()
GO TOP
ENDIF
_screen.ActiveForm.Refresh()
Для кнопки Следующая:
*Переходим на следующую запись и перевыводим значения полей
IF !EOF()
SKIP
ENDIF
_screen.ActiveForm.Refresh()
Для кнопки Предыдущая:
*Переходим на предыдущую запись и перевыводим значения полей
IF !BOF()
SKIP – 1
TNDIF
_screen.ActiveForm.Refresh()
Для кнопки Последняя:
*Переходим на последнюю запись и перевыводим значения полей
IF !EOF ()
GO BOTTOM
ENDIF
_screen.ActiveForm.Refresh()
Для кнопки Выход:
*Завершаем и выходим, если “ДА”
MESSAGEBOX (“Выходить из формы ?”, 4+32+256,”Выход”)=6
_screen.ActiveForm.Release()
ELSE
_screen.ActiveForm.Refresh()
ENDIF
11. После ввода текста, закройте окна процедур.
12. Набор кнопок для перемещения по записям таблицы и выхода из формы создан. Закройте форму на выполнение, выполнив команду Form | Run Form.
Свойство Value объекта CommandGroup содержит номер нажатой кнопки. Каждая кнопка имеет свой номер, получаемый автоматически по мере ее добавления к группе управления. Основным преимуществом применения группы является возможность написания одного метода обработки для всей группы.
Например, все три кнопки группы выполняют одно и тоже действие – создают отчет, направляя его в различные места. Вместо написания процедуры создания отчета для каждой кнопки имеет смысл объединить кнопки в один объект и написать для него одну процедуру. В процедуре обработки события группы Click можно определить нажатую кнопку, обратившись к свойству Value. Пример определения нажатой кнопки:
DO CASE
CASE This.Value = 1
**Печать отчета на примере
REPORT FORM CUSTOMER.frx NOCONSOLE TO PRINTER
CASE This.Value = 2
**Запись отчета в файл
REPORT FORM CUSTOMER.frx TO FILE Pr_Cust.txt ASCII
CASE This.Value = 3
**Просмотр отчета на экране
REPORT FORM CUSTOMER.frx NOCONSOLE PREVIEW
ENDCASE
Дата добавления: 2015-10-29; просмотров: 670;