5. Установка цвета рисования и фона: Color и Backcolor
До сих пор мы работали в графическом режиме, не обращая внимания на цвет.
Как и в текстовом режиме, можно выбрать цвет рисования и цвет фона. Инструкции для выбора цвета в графическом режиме —
Color и
BackColor.
Color задаёт цвет переднего плана (рисования) и имеет следующий синтаксис:
Red, Green и Blue (красный, зелёный и синий) — три числа от 0 до 255, с помощью которых можно задать количество каждого из трёх цветов (0 — ничего; 255 — максимум). Таким образом получается 256 × 256 × 256 = почти 17 миллионов различных цветов.
Для белого используется Color 255, 255, 255, для чёрного — Color 0, 0, 0.
В качестве альтернативы можно сохранить три числа в строковую переменную и дать ей имя цвета — так гораздо понятнее, чем работать с тремя числами. Следующий пример рисует жёлтую окружность:
Код: Выделить всё
Clear Screen
Open window 200, 200
Yellow$ = (255, 255, 0)
Color Yellow$
Circle 100, 100, 50
Inkey$
Close window
End
На следующем графическом экране показан ряд окружностей с предустановленными цветами. В левой части виден код программы, где выполнены все 8 возможных комбинаций, присваивая значения 255 или 0 красному, зелёному и синему.
Код: Выделить всё
Clear Screen
Open window 700,500
Negro$="0,0,0"
Blanco$="255,255,255"
Rojo$="255,0,0"
Verde$="0,255,0"
Azul$="0,0,255"
Amarillo$="255,255,0"
Magenta$="255,0,255"
Cyan$="0,255,255"
Color Negro$
Fill Circle 40,200,30
Color Blanco$
Fill Circle 110,200,30
Color Rojo$
Fill Circle 180,200,30
Color Verde$
Fill Circle 250,200,30
Color Azul$
Fill Circle 320,200,30
Color Amarillo$
Fill Circle 390,200,30
Color Cyan$
Fill Circle 460,200,30
Color Magenta$
Fill Circle 530,200,30
Inkey$
Close window
End
Также важно установить цвет фона.
Это делается с помощью инструкции BackColor со следующим синтаксисом:
Использование этой переменной такое же, как и у Color, и также можно заранее сохранить цвета в строковые переменные, давая им имена, которые ясно говорят, какому цвету они соответствуют:
Код: Выделить всё
Blanco$ = "255,255,255"
Amarillo$ = "255,255,0"
Magenta$ = "255,0,255"
Гораздо понятнее написать BackColor Magenta$, чем BackColor 255,0,255, не так ли?
Чтобы
BackColor возымел действие, нужно сначала открыть графическое окно с помощью open window. Простое объявление цвета фона через BackColor ничего не изменит. Необходимо использовать ещё одну очень простую команду —
Clear window, аналог
Clear screen для текстового режима, но в графическом. Тогда цвет фона будет установлен.
Это показано в следующей программе и её результате: фон графического окна становится синим, а затем рисуется красный круг. Есть новшество: теперь это не просто окружность, а закрашенный круг, потому что в команде
circle использована клавиша
fill (заливка).
Код: Выделить всё
Clear Screen
Rojo$="255,0,0"
Azul$="0,0,255"
Open window 400,300
BackColor Azul$
Inkey$
Clear window
Inkey$
Color Rojo$
Fill Circle 200,150,80
Inkey$
Close window
End
backcolor.jpg
Маленькая деталь, но я её упомяну: можно взаимозаменяемо использовать слова Color и Colour, а также BackColor и BackColour. Работают они совершенно одинаково.