Width
 
Устанавливает или получает количество строк и столбцов на дисплее

Синтаксис

Width [columns] [, rows]
Width LPrint columns
Width { #filenum | devicename }, columns
result = Width( )

Параметры

columns
столбцы (в символах) для вывода
rows
строки (в символах) для вывода
filenum
номер файла для применения
devicename
имя устройства для применения

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

Возвращает 32-битное значение Integer , где High Word(старшее слово) - это количество строк , а Low Word(младшее слово) - число столбцов , установленных в настоящее время.

Описание

Устанавливает максимальное количество столбцов символов в устройстве вывода (консоли, принтере или текстовом файле). Если текст , отправляемый на устройство, достигает ширины, то автоматически генерируется возврат каретки.

Используя Width как функцию,  возвращается текущая ширина консоли в младшем слове , а текущая высота в старшем слове.

Если устройство не используется, тогда Width работает с активным экраном консоли\графики, и второй аргумент, указывающий максимальное количество строк допускается.

В графических режимах Width используется для косвенного выбора размера шрифта , установка одной из пар height*width (высота*ширина) символа допускается (Смотрите Screen (Графика)). Если rows / cols является недействительной комбинацией, никаких изменений в экранный дисплей не вносится.

Действительная высота шрифта составляют 8 пикселей, 14 пикселей и 16 пикселей. У всех шрифтов фиксированная ширина 8 пикселей.

Используя Width , вызывается команда очистки экрана (Cls)

Пример


Dim As Integer w
w = Width
Print "rows: " & HiWord(w)
Print "cols: " & LoWord(w)


''Настройка графического экрана
Const W = 320, H = 200
ScreenRes W, H

Dim As Integer twid, tw, th

'' Загрузить и распечатать текущий текст ширина/высота:
twid = Width()
tw = LoWord(twid): th = HiWord(twid)
Print "Default for current screen (8*8)"
Print "Width:  " & tw
Print "Height: " & th
Sleep

Width W\8, H\16 '' Используется 8*16 шрифт

twid = Width()
tw = LoWord(twid): th = HiWord(twid)
Print "Set to 8*16 font"
Print "Width:  " & tw
Print "Height: " & th
Sleep

Width W\8, H\14 '' Используется 8*14 шрифт

twid = Width()
tw = LoWord(twid): th = HiWord(twid)
Print "Set to 8*14 font"
Print "Width:  " & tw
Print "Height: " & th
Sleep

Width W\8, H\8 '' Используется 8*8 шрифт

twid = Width()
tw = LoWord(twid): th = HiWord(twid)
Print "Set to 8*8 font"
Print "Width:  " & tw
Print "Height: " & th
Sleep


Различия платформ

  • В Windows консоли любые значения > 0 могут быть использованы в оконном режиме.
  • В DOS или Windows консоли,  в полноэкранном режиме, допустимые размеры зависят от аппаратных возможностей.
  • Linux не позволяют приложениям изменить размер консоли.

Отличия от QB

  • columns был ограничен 40 или 80, а rows должен быть 25, 30, 43, 50 или 60, в зависимости от графического оборудования и используемого режима экрана.

См. также