Cls
 
Очищает экран и в текстовых и в графических режимах

Синтаксис

Declare Sub Cls ( ByVal mode As Integer = 1 )

Использование

Cls mode

Параметры

mode
необязательная числовая переменная со значением от 0 до 2. Если этот параметр опущен, по умолчанию 1.

Описание

Необязательный параметр mode может быть установлен,

Если не указано, Cls очищает или текст или графический viewport(область просмотра). Если графический viewport (область просмотра) был определен с помощью оператора View (графика) , очищается графический viewport(область просмотра). В противном случае очищается текстовый viewport(область просмотра) , определенный с помощью View Print. (Если текстовая область просмотра явно не указана, очищается весь экран.)

Если 0, очищает весь экран

Если 1, очищает графическую область просмотра, если она определена. В противном случае очищает текстовую область просмотра

Если 2, очищает текстовую область просмотра


Пример

'' Задаем светло серый цвет текста на синем фоне
Color 7, 1

'' очищаем экран цветом фона
Cls

'' печатаем текст в центре экрана
Locate 12, 33
Print "Hello Universe!"


В графических режимах, если вы хотите очистить весь экран цветом 0, это можно сделать быстрее, используя Clear , чтобы записать нули в память экрана, чем вызывать Cls.

Dim scrbuf As Byte Ptr, scrsize As Integer
Dim As Integer scrhei, scrpitch
Dim As Integer r = 0, dr = 1

ScreenRes 640, 480, 8

scrbuf = ScreenPtr: Assert( scrbuf <> 0 )
ScreenInfo( , scrhei, , , scrpitch )
scrsize = scrpitch * scrhei

Do
    
    '' Блокировка экрана (это необходимо сделать во время непосредственной работы с screenbuffer)
    ScreenLock
        
        '' очистить экран (можно использовать Cls здесь):
        Clear *scrbuf, 0, scrsize
        
        '' нарисовать круг
        Circle (320, 240), r
        
    ScreenUnlock
    
    '' радиус круга растет\сокращается
    r += dr
    If r <= 0 Then dr = 1 Else If r >= 100 Then dr = -1
    
    '' Короткая пауза в каждом кадре (даем отдышаться процессору)
    Sleep 1, 1
    
    '' запустить цикл до тех пор, пока пользователь не нажмет клавишу
Loop Until Len(Inkey) > 0


Отличия от QB

  • нет

См. также