Вычисляет выражения и выводит результаты в основное окно Visual FoxPro, в активное окно определенное пользователем или на принтер.

? | ?? Expression1 [PICTURE cFormatCodes] | [FUNCTION cFormatCodes] | 
   [VnWidth] [AT nColumn] 
   [FONT cFontName [, nFontSize [, nFontCharSet]] [STYLE cFontStyle | Expression2]]
   [, Expression3] ... 

Parameters

? Expression1

Вычисляет выражение, заданное аргументом Expression1, и выводит результаты, ставя перед ними возврат каретки и перевод строки. Результаты отображаются в следующей строке основного окна Visual FoxPro или активного окна, определенного пользователем, и печатаются у левого поля страницы, если только код функции шаблона cFormatCodes или системная переменная памяти _ALIGNMENT не задают иной порядок. Если выражения опущены, выводится или печатается пустая строка. Если задано несколько выражений, между их результатами ставится пробел. Если результатом выражения Expression1 является объект, the ? команда возвращает строковое значение, "(Object)".
?? Expression1

Вычисляет выражение, заданное аргументом Expression1, и отображает полученные результаты в текущей строке и в текущей позиции основного окна Visual FoxPro, активного пользовательского окна или принтера. Перед результатами не выдается возврат каретки с переводом строки.
PICTURE cFormatCodes

Задает формат шаблона, в котором должен отображаться результат выражения Expression1. Среди cFormatCodes могут быть как функциональные коды, так и коды шаблонов. Вы можете использовать те же самые коды, доступные вСвойстве Format и Свойстве InputMask. Функциональные коды определяют общий формат результата, а коды шаблонов воздействуют на отдельные символы в результате. Если среди cFormatCodes заданы функциональные коды, они должны идти до кодов шаблонов и сопровождаться префиксом @. Непосредственно после символа @ можно ввести несколько функциональных кодов без внутренних пробелов. После последнего функционального кода должен стоять один или несколько пробелов, сигнализирующих о конце последовательности функциональных кодов и о начале кодов шаблонов.
FUNCTION cFormatCodes

Задает функциональный код, который следует включить в вывод команд ? и ??. Если данное предложение указано, перед функциональными кодами не нужно ставить символ @. Функциональные коды должны сопровождаться префиксом @ только в том случае, когда они включаются в предложение PICTURE.
V nWidth

Задает специальный функциональный код, с помощью которого результаты символьного выражения можно растягивать по вертикали в определенном числе столбцов. Количество столбцов в выводе задает аргумент nWidth.
  Копировать код
? 'This is an example of how the V function code works.' ;
   FUNCTION 'V10'
AT nColumn

Задает номер столбца, в котором будет выведен результат. Данная опция позволяет выравнивать вывод по столбцам, чтобы получилась таблица. В качестве числового выражения nColumn может быть указана определенная пользователем функция, которая возвращает числовое значение.
FONT cFontName[, nFontSize [, nFontCharSet]]

Задает шрифт для вывода команд ? или ?? . Аргумент cFontName определяет название шрифта, а nFontSize его размер в пунктах. Вы можете определить сценарий языка nFontCharSet. См. Функция GETFONT () для списка доступных значений сценария языка. Например, приведенная ниже команда задает вывод на экран системной даты шрифтом Courier размером 16 пунктов:
  Копировать код
? DATE( ) FONT 'Courier',16 
Если указано предложение FONT без аргумента nFontSize, используется шрифт размером в 10 пунктов. Если предложение FONT опущено, а вывод команд ? или ?? направлен в основное окно Visual FoxPro, используется шрифт данного окна. Если предложение FONT опущено, а вывод команд ? или ?? направлен в окно, определенное пользователем, для вывода применяется шрифт этого пользовательского окна.
Note:
Если заданный шрифт отсутствует, его заменяет шрифт с похожими характеристиками.

STYLE cFontStyle

Задает стиль шрифта для вывода команд ? или ?? . Если предложение STYLE опущено, используется стиль Normal. Если заданный стиль шрифта отсутствует, его заменяет стиль с похожими характеристиками.
Note:
Если вы определяете стиль шрифта с помощью предложения STYLE, обязательно должно быть включено предложение FONT.

В качестве cFontStyle можно указывать следующие стили шрифтов:

cFontStyle Стиль шрифта

B

Bold (Полужирный)

I

Italic (Курсив)

N

Normal (Нормальный)

Q

Opaque (Непрозрачный)

-

Strikeout (Перечеркнутый; только в Visual FoxPro)

T

Transparent (Прозрачный)

U

Underline (Подчеркнутый)

Можно задать комбинацию стилей, указав несколько символов. Например, приведенная ниже команда отображает на экране системную дату шрифтом Courier Bold Italic:
  Копировать код
? DATE( ) FONT 'COURIER' STYLE 'BI'

Коментарии

Для выдачи результатов только на принтер, используйте команды:

  Копировать код
SET PRINTER ON 
SET CONSOLE OFF

Для выдачи результата выражения на принтер и одновременно в основное окно Visual FoxPro или в активное пользовательское окно, используйте команды::

  Копировать код
SET PRINTER ON

Установка SET ALTERNATE изменяет направление вывода для команд ? и ?? . Для получения дополнительной информации, см. SET ALTERNATE Command.

Команда ? отображает двоичные данные для Varbinary типов данных в шестнадцатеричном формате без ограничения на размер. Для получения дополнительной информации, см. Varbinary Data Type.

Пример

Следующий пример отображает заданные выражения:

  Копировать код
? 15 * (10+10)
? 'Welcome to ' PICTURE '@!'
?? 'Visual FoxPro'

Смотреть также