Задает несколько свойств для объекта.

WITH ObjectName [AS <Type> [OF <Class Library>]]
   [.cStatements]
ENDWITH

Параметры

ObjectName

Задает имя объекта. В качестве ObjectName можно использовать как имя объекта, так и ссылку на объект.

Type

Базавый клас, имя класа, или тип библиотеки. (Только для Intellisense)

Class Library

Библиотека класов содержащая базовый клас, имя класа, или тип библиотеки заданый параметром Type. (Только для Intellisense.)

.cStatements

cStatements может состоять из любого числа команд Visual FoxPro, использующихся для задания свойств объекта ObjectName. Чтобы обозначить аргумент cStatement как свойство объекта ObjectName, поставьте перед ним точку.

Expand imageПримечания

WITH ... ENDWITH представляет собой удобный способ задания нескольких свойств для одного объекта. Следует отметить, что можно выполнять методы изнутри структуры WITH ... ENDWITH.

Expand imageПример

Следующий пример создает пользовательское имя класса Employee. После того как класс Employee был создан с помощью CREATEOBJECT( ), структура WITH ... ENDWITH используется для установки нескольких свойств для класса. Затем отображаются значения свойств.

  CopyCode imageCopy Code
moemployee = CREATEOBJECT('employee')

WITH moemployee
   .First_Name = 'John'
   .Last_Name = 'Smith'
   .Address = '16 Maple Lane'
   .HireDate = {^1998-02-16}
ENDWITH

CLEAR
? moemployee.First_Name + ' '
?? moemployee.Last_Name
? moemployee.Address
? moemployee.HireDate

DEFINE CLASS employee AS CUSTOM
      First_Name = SPACE(20)
      Last_Name = SPACE(20)
      Address = SPACE(30)
      HireDate = {  -  -  }
ENDDEFINE

Expand imageСмотрите также