Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Плещёв ИП 2010-04-04 doc.doc
Скачиваний:
108
Добавлен:
13.05.2015
Размер:
5.96 Mб
Скачать

2.8.5. Окраска изображения ‑ Paint (qb)

Вид команды: Paint [Step](x,y)[,[<трафарет>][,[<контур>][,<фон>]]]

Step - относительные координаты;

(x,y) ‑ координата любой внутренней точки закрашиваемой области;

<трафарет> - если число, то номер цвета в палитре; если строка, то заполняется этой строкой;

<контур>, <фон> ‑ номер цвета контура, строка заполнения фона.

2.8.6. Запись фрагмента экрана в массив ‑ Get(qb)

Вид команды: Get [Step](x1,y1)-[Step](x2,y2),<имя массива>

Step ‑ относительные координаты окна левого верхнего угла фрагмента (x1,y1),(x2,y2);

<имя массива> ‑ целочисленный массив, в котором запоминается окно.

2.8.7. Восстановление изображения на экране ‑ Put (qb)

Вид команды: Put [Step](x,y),<имя массива>[,<операции>]

Первые параметры аналогичны параметрам предыдущей команды.

<операция> ‑ имя операции: Pset (восстановление всех атрибутов окна), Prset (восстановление негативного изображения), And (наложение на су­щес­твующий экран с сохранением одноцветных цветов), Or (наложение по ло­гической операции “Или”), Xor(нечетное появление вызывает инвер­ти­ро­ва­ние фона, а четное ‑ его восстановление.).

Алгоритм движения изображения: Put c изображением; фиксация; стереть повторным выводом с Xor; Put в новом месте.

2.8.8. Копирование страниц экрана ‑ Pcopy (qb)

Вид команды: Pcopy <источник>,<приемник>

<источник>,<приемник> ‑ номера страниц источника и приемника дис­плея. Обычно в качестве приемника указывается номер отображаемой страницы.

2.9. Музыкальные операторы

2.9.1. Подача звукового сигнала ‑ Beep

Команда подает звуковой сигнал частотой 800 Гц в течение 0,25 с.

2.9.2. Формирование звукового сигнала ‑ Sound (QB)

Вид команды: Sound <частота>,<длительность>

Пример. For i% = 440 To 1000 Step 5: Sound i%, i% / 1000: Next

2.9.3. Музыкальное сопровождение ‑ Play (QB)

Команда имеет вид: Play <командная строка>

<командная строка> - строка команд:

C, D, E, F, G, A, B ‑ ноты: до, ре, ми, фа, соль, ля, си соответственно;

#, <минус> ‑ диез, бемоль после ноты;

Nn, On - номер клавиши фортепиано (0 - пауза,1 ‑ 84), номер октавы;

>, < ‑ переход на октаву выше или ниже соответственно;

Ln-длительность звучания следующей ноты относительно целой ноты 1/n (n=1, 2, 4, 8, 16, 32, 64). Длительность можно указать сразу после обозначения ноты (C16 равносильно L16C);

Pn - длительность паузы относительно целой ноты 1/n (1 - 64);

Tn - темп в минуту в четвертных нотах (32- 255); по умолчанию ‑ 120;

ML, MN, MS - легато, нормаль или стаккато соответственно;

.‑ удлинить предшествующую ноту в полтора раза;

MF, MB - непосредственное, фоновое выполнение (до 32 нот).

“X”+Varptr(X$)- выполнение подстроки команд из строки.

2.10. Вызов внешних процедур и функций

Внешние процедуры (или просто процедуры) существенно отличаются от внутренних процедур: они вызываются по имени, могут передаваться параметры, могут находиться в других программах или файлах, функции дополнительно возвращают некоторое значение в

качестве результата выполнения и др.

2.10.1. Объявление процедур ‑ Declare

Объявление имеет вид:

[Private|Public]Declare {Function|Sub}<имя подпрограммы>[Lib<имя DLL ­биб­­­­­­лиоте­ки с подпрограммой (п.14.2)>][Alias “<псевдоним под­­прог­­рам­­мы для вызова>”][([<параметры>])][As<тип результата для функции>]

2.10.2. Задание процедуры ‑ Sub

Процедура задается в виде:

[Private|Public]Sub <имя>[(<параметры>)] [Static] 'заголовок процедуры

... [Exit Sub] 'преждевременный выход из процедуры ...

End Sub 'конец процедуры

Private/Public‑ процедура известна в одном/во всех модулях.

Static - все локальные переменные процедуры статичны (типа Static).

<параметры> - список параметров через запятую в виде:

[Optional][ByVal |ByRef]<имя параметра>[( )] As <тип параметра>[=<N>].

Optional ‑ параметр может отсутствовать при вызове процедуры (VB).

<N> ‑ значение (константа) для отсутствую­щего параметра (VB).

ByVal | ByRef] ‑ значение параметра нельзя/можно изменить (VB).