Указывает имя класса DataEnvironment, используемого при введении DataEnvironment в форму. Редактируемое в design time и "только для чтения" в run time.
В design time, DEClass предоставляет вам возможность указать класс DataEnvironment из библиотеки классов в свойстве DEClassLibrary.
Form.DEClass [= cClassName] |
Возвращаемое значение
- cClassName
-
Символьный тип данных. Параметр cClassName указывает одно из приведенного ниже:
-
Имя программного класса в файле программы (.prg
-
Имя невизуального класса в файле библиотеки визуальных классов (.vcx)
-
Примечания
Применяется к: Form Object
Visual FoxPro поддерживает DEClass и DEClassLibrary для форм (.scx), библиотек визуальных классов и программных файлов (.prg), но не поддерживает для объектов FormSet или в конструкторе отчетов.
Visual FoxPro создает экземпляр объекта DataEnvironment из DEClass и связанного с ним свойства DEClassLibrary при наличии приведенных ниже условий:
-
DEClass указывает на класс DataEnvironment в design time в окне Properties для формы.
-
DEClass указывает класса DataEnvironment при программнои создании формы.
При создании формы Visual FoxPro использует указанный класс DataEnvironment для создания объекта DataEnvironment. Если вы укажите значение для свойства DEClassLibrary, но не укажите значения для DEClass, или, если класс DataEnvironment не является классом требуемого типа или не существует в указанной библиотеке классов, Visual FoxPro сгенерирует соответствующее сообщение.
Вы можете установить значения свойств DEClass и DEClassLibrary, используя окно Properties в конструкторе форм, в классе формы или определении класса формы в программном файле .prg. Visual FoxPro отображает DEClass и DEClassLibrary в окне Properties, как "только для чтения". Однако, щелчок по командной кнопке выбора (...) в окне свойств - Properties, отобразит диалоговое окно Open для того, чтобы вы смогли выбрать желаемый файл программы .prg или, если поддерживается, файл .vcx.
Вы можете, кроме того, использовать функцию ASELOBJ( ) для сохранения объектных ссылок в массив для индивидуальной установки свойств. Однако, если вы установите значение только для свойства DEClass или DEClassLibrary, Visual FoxPro сбросит установки этих свойств и будет использовать класс DataEnvironment, который определен по умолчанию. Вы должны установить значения для обоих свойств.
Замечание |
---|
При установке свойств DEClass и DEClassLibrary с помощью программного кода или функции ASELOBJ() вы должны установить DEClassLibrary до установки свойства DEClass. |
Когда вы открываете конструктор Data Environment Designer с помощью щелчка по правой клавише мыши на форме, то происходит описанное ниже:
-
Класс DataEnvironment, содержащий объекты Cursor
Если содержащийся в классе курсор или курсоры ссылаются на существующую таблицу или удаленное представление, таблицы и представления помещаются на поверхность конструкторв Data Environment Designer с признаком "только для чтения". Вы можете перетаскивать поля или таблицы на поверхност конструктора форм в случае, если приведенные ниже свойства установлены в соответствии с конкретными требованиями:
-
CursorSource (Требуемый) Имя таблицы и путь для случая свободной таблицы; только имя таблицы, если она принадлежит контейнеру базы данных (DBC).
-
Database (Необязательный) Имя и путь контейнера базы данных DBC заполняется автоматически, если вы имеете дело с таблицей базы данных или представлением.
-
Alias (Необязательный) Псевдоимя, присвоенное таблице если оно отличается от имени таблицы. В противном случае, псевдоимя устанавливается по умолчанию в имя, определяемое CursorSource.
Если класс DataEnvironment содержит объект Cursor, но курсор не содердит действительной ссылки на таблицу или представление, конструктор Environment Designer не открывается. Visual FoxPro загружает окружение данных после генерации соответствующего сообщения.
Если класс DataEnvironment содержит множество объектов Cursor, то на поверхность конструктора Data Environment Designer помещаются только те курсоры, которые содержат действительные ссылки на таблицы и/или представления. Курсоры, которые не содержат действительных ссылок на таблицы или представления сбрасываются.
Если курсор ссылается на DBC, но не содержит ссылки на существующую в нем таблицу или представление, Visual FoxPro загружает окружение данных после генерации подходящего случаю сообщения.
Если класс DataEnvironment не содержит объекта Cursor, то конструктор Data Environment Designer не открывается и Visual FoxPro генерирует подходящее случаю сообщение.
Когда вы перетаскиваете файл таблицы (.dbf) из каталога на формы, пока открыто окружение данных, не являющееся экземпляром класса DataEnvironment, Visual FoxPro автоматически добавляет таблицу в окружение данных. Однако, если открытое окружение данных основано на классе DataEnvironment, то поскольку окружение данных имеет признак "только для чтения", то Visual FoxPro не добавляет файл таблицы .dbf в окружение данных.
-
-
Класс DataEnvironment, содержаший объекты CursorAdapter
Если класс DataEnvironment содержит объект CursorAdapter, то CursorAdapter должен отвечать приведенным ниже требованиям для того, чтобы он мог появиться на поверхности конструктора Data Environment Designer:
-
Свойство CursorSchema объекта CursorAdapter определено и установлено в допустимое значение.
-
Свойство Alias объекта CursorAdapter определено.
Замечание Если указанные условия соблюдены, курсор-адаптер покажется на поверхности конструктора Data Environment с признаком "только для чтения". Вы можете перетаскивать таблицы и поля на форму. Свойства, события или методы окружения данных и любые, содержащиеся в нем объекты CursorAdapter имеют признак "только для чтения".
Конструктор Data Environment Designer не открывается, если верно любон из перечисленных ниже условий:
-
Класс DataEnvironment содержит объект CursorAdapter но курсор-адаптер не содержит допустимых данных в свойстве CursorSchema.
-
Объект CursorAdapter не был инициализирован по какой-либо причине.
-
Для изменения класса DataEnvironment вы должны закрыть конструктор форм, высводоить любые используемые классы, изменить и перекомпилировать класс DataEnvironment в файле, указанном в свойстве DEClassLibrary и только затем вернуться в конструктор форм.
Когда свойства DEClass и DEClassLibrary установлены, то запущенная форма создает и загружает окружение данных из указанного класса DataEnvironment. Для установки свойств DEClass и DEClassLibrary в run time, вы должны использовать програмный код.
Если вы пытаетесь преобразовать форму в набор форм в design time, когда открыт конструктор форм, и для свойств DEClass и DEClassLibrary определены значения, Visual FoxPro генерирует подобающее случаю сообщение. Если в конструкторе форм открыт набор форм, а вы пытаетесь добавить в него форму, которая имеет определенные в design time значения свойств DEClass и DEClassLibrary, то Visual FoxPro сгенерирует подобающее случаю сообщение и сделает свойства DEClass и DEClassLibrary недоступными. Если вы попытаетесь добавить форму с установленными значениями свойств DEClass и DEClassLibrary в набор форм в run time, Visual FoxPro сбросит значения DEClass DEClassLibrary и не будет загружать указанный класс окружения данных.
Свойства DEClass и DEClassLibrary поддерживают области видимости Public, Hidden, и Protected.
Свойства DEClass и DEClassLibrary не поддерживают методов Access и Assign.
В субклассе формы, свойства DEClass и DEClassLibrary наследуются обычным образом.
Пример
Приведенный ниже пример создает класс Form и устанавливает свойства DEClassLibrary и DEClass в значения, указывающие на внешние класс DataEnvironment и библиотеку классов.
Скопировать код | |
---|---|
DEFINE CLASS form1 as Form DEClassLibrary="MyProgram.prg" DEClass="MyDE" ENDDEFINE |
Смотрите также
© Microsoft Corporation. All rights reserved.
Перевод выполнен JS.