Возвращает количество столбцов в пределах активного или указанного окна.

WCOLS([WindowName])

Параметры

WindowName

Определяет окно, для которого WCOLS( ) возвращает количество столбцов. В Visual FoxPro, Вы можете также определить имя инструментальной панели. Если Вы не определяете окно, возращается количество столбцов в активном окне вывода. Если никакое окно не активно, WCOLS( ) возвращает количество столбцов в главном окне Visual FoxPro. Вы можете определить имя системного окна (окно Command, окно Data Session, окно Browse, и так далее) в WCOLS( ), если системное окно было активизировано и является видимым или скрытым. В Visual FoxPro, Вы могли определить имя инструментальной панели (инструментальная панель Standard, инструментальная панель Color Palette, и так далее) в WCOLS( ), если инструментальная панель была активизирована и является видимой или скрытой. Если Вы определяете имя системного окна или инструментальной панели, которая не была активизирована, Visual FoxPro генерирует сообщение об ошибке. Окно Debug - исключение. Как только окно Debug было открыто, его имя может быть включено в WCOLS( ), если оно видимо, скрыто или закрыто. Вы можете также включить пустую строку как имя окна, чтобы возвратить количество столбцов в главном окне Visual FoxPro. Пустая строка может использоваться, чтобы определить главное окно Visual FoxPro в функциях типа WLCOL( ), WLROW( ), и WROWS( ), которые возвращают местоположения окна или его размеры.

Возвращаемое значение

Числовое

Замечания

В Visual FoxPro, значение, возвращенное WCOLS( ) зависит от шрифта, указанного для окна. Многие шрифты могут быть отображены в широком разнообразии размеров (непропорциональные - ред.), а некоторые размечены пропорционально. Столбец соответствует средней ширине символа в текущем шрифте. Для подробной информации, см. тему Краткий обзор Шрифтов .

Пример

Следующий пример выравнивает по центру вывод короткого сообщения в последней строке окна неизвестного размера.

Скопировать код
CLEAR
DO SendMesg WITH 'Message', WCOLS( ), WROWS( ) –1
*** SendMesg ***
PROCEDURE SendMesg
PARAMETERS gcMsg, gnCol, gnRow
STORE (gnCol – LEN(gcMsg))/2 TO gnCol
@ gnRow, gnCol SAY gcMsg
RETURN

См. Также