Использование элементов управления при проектировании форм приложения

Контрольная работа - Компьютеры, программирование

Другие контрольные работы по предмету Компьютеры, программирование

?о контроля длительности выполнения какого-то действияSlider ControlДля выбора дискретных значений в каком-либо диапазонеStatusbar ControlДля отображения данных о текущем состоянии приложенияTabStrip ControlДля создания многостраничных форм с вкладкамиToolBar ControlДля хранения коллекции объектов ButtonsTreeView ControlДля отображения иерархических списков специальных объектов Node, содержащих текст или изображениеCOMDLG32.OCXCommon Dialogs ControlЭлемент обеспечивает набор стандартных диалоговых окон для таких операций, как открытие, сохранение и печать файлов, выбор цвета и шрифтаDBLIST32.OCXMSDataCombo ControlРаскрывающийся список предназначен для работы с данными в Visual BasicMSDataList ControlFOXHWND.OCXVisual FoxPro HWND ControlПозволяет вывести в форме окно для показа изображения. (Не только файлы формата BMP, но и формата ICO и WMF) FOXTLIB.OCXVisual FoxPro Foxtlib ControlЭлемент выполняет функции просмотра библиотеки объектов OLE-сервера Visual FoxProGRID32.OCXGrid ControlОбъект для отображения данныхMCI32.OCXMicrosoft Multimedia ControlЭлемент управляет воспроизведением и записью файлов мультимедиа устройствамиMSACAL70.OCXCalendar ControlЭлемент может быть встроен в форму приложения для быстрого поиска даты.MSCOMM32.OCXMicrosoft Comm ControlПредставляет элементы управления для передачи данных в приложение по последовательному интерфейсу.MSMAPI32.OCXMicrosoft MAPI Message ControlПредставляют набор элементов для создания в пользовательском приложении возможности передачи почтовых сообщенийMicrosoft MAPI Session ControlRICHTX32.OCXRich TextBox ControlОбеспечивает возможность создания окна для работы с форматированным текстомSYSINFO.OCXSysInfo ControlПри работе программы является невидимым объектом и предназначен для получения информации о системных установках.

Так как большинство из элементов разрабатывались для использования в Visual Basic, не все их возможности удается реализовать в Visual FoxPro.

Для того чтобы использовать элементы ActiveX следует на вкладке Controls окна Options выбрать необходимые элементы (рис.1), и, для добавления элемента на форму, переключить панель инструментов Form Controls в режим представления элементов ActiveX.

Пример 1: Элементы управления ProgerssBar и StatusBar.

В Конструкторе форм с помощью панели инструментов Form Controls, переключенной в режим отображения элементов ActiveX, добавим в новую форму элемент управления StatusBar.С помощью окна StatusBar Control Properties, которое вызывается при выборе одноименной команды в контекстном меню объекта, установим на вкладке Panels две панели.

На первой будем отображать имя текущей таблицы (свойство Style установим в значение Text), на второй выведем текущее время.

В окне Properties установим значения следующих свойств объекта:

 

Align = 0 - None ; Name = "StatusBar"

 

Добавим в форму объект ProgressBar и аккуратно подберем его размер и расположение. Установим значение свойства Name = ProgressBar.

С помощью объекта ProgressBar будем отображать процесс перебора клиентов. Для этого добавим в DataEnvironment формы таблицу Clients. Для отображения имен клиентов используем элемент управления Text Box. Для перебора расположим на форме кнопку Next, в код события Click, которой запишем:

 

Select Clients If !EOF() ThisForm.ProgressBar.Value = nCounter nCounter = nCounter+1 Skip EndIf ThisForm.Refresh

 

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

 

This.Panels(1).Text = ALIAS()

 

В событии Init объекта Form зададим начальные значения свойств элементов формы:

 

Public nCounter Select Clients ThisForm.ProgressBar.Min = 1 ThisForm.ProgressBar.Max = Reccount() ThisForm.ProgressBar.Value = ThisForm.ProgressBar.Min nCounter = 1

 

Пример 2. Элемент управления Calendar Control.

Рассмотрим пример использования этого элемента ActiveX для ввода и корректировки даты в форме.

Создадим простейшую форму , в которой разместим текстовое поле для ввода или редактирования даты. Значение даты будем запоминать в специально созданном свойстве формы dDate, которому присвоим начальное значение Date().

В событии Init объекта Text Box запишем:

 

ThisForm.dDate = This.Value

 

Это позволит обновлять значение свойства dDate, если пользователь отредактирует дату, а затем захочет вызвать календарь.

Для вызова календаря справа от текстового поля разместим кнопку с соответствующим изображением. Для события Click этой кнопки запишем код:

 

Do Form Form_calendar with ThisForm.dDate to ThisForm.dDate ThisForm.Text1.value = ThisForm.dDate

 

Команда DO FORM вызывает форму с календарем, в которую в качестве параметра с помощью опции WITH передается текущее значение даты в текстовом поле.

Значение даты, выбранное в календаре, возвращается в форму и присваивается свойству dDate с помощью опции TO.

Для размещения календаря создадим модальную форму (свойство WindowType = 1 Modal). Добавим в форму свойство для запоминания выбранной даты - dParam. Разместим объект Calendar с помощью панели инструментов Form Controls, переключенной в режим ActiveX.

Для того чтобы передать значение выбранной даты в событие AfterUpdate календаря запишем:

dd = ctod (str(This.day)+str(This.month)+str(This.year)) Thisform.dParam = dd ThisForm.Release

 

В событие Unload формы запишем код, который обеспечит передачу значения даты в главную форму: return This.dParam

Для придания календарю требуемого внешнего вида используйте диалоговое окно Calendar Control Properties, которое можно вызвать при нажатии правой кнопки мыши на этом объекте. Здесь же можно установить понедельник в качестве первого дня недели с помощью раскрывающегося списка First day.