- •Начало работы в среде разработчика FoxPro
- •Константы и переменные
- •Примеры
- •Примеры
- •Примеры
- •Комментарии
- •Процедуры и функции
- •Примеры:
- •Индексы массива
- •Примеры
- •Примеры
- •Примеры
- •2. Считывание информации из файла.
- •3. Перемещение по файлу
- •Примеры
- •Примеры
- •Примеры
- •Примеры
- •Примеры
- •Примеры
- •Задание
- •Примеры
- •Задание
- •Графические функции
- •Шрифтовые свойства
- •Метод line
- •Метод box
- •Метод Circle
- •Функции даты и времени
- •Use [файл | ?] [in рабочаяОбласть] [again] [alias Псевдоним] [exclusive | shared] [noupdate]
- •Добавление и изменение значений полей
- •Относительное перемещение:
- •Контрольные работы
Шрифтовые свойства
Для работы с текстом существует достаточно большое количество шрифтовых свойств: FontBold, FontItalic, FontName, FontSize, FontStrikeThru, FontUnderline. Наиболее важными из них являются свойства FontName и FontSize, первое задает тип шрифта, второе – размер.
_screen.fontsize=10
_screen.print(“Пробный текст”)
_screen.fontsize=20
_screen.print(“Пробный текст”)
_screen.fontsize=30
_screen.print(“Пробный текст”)
Эта группа команд выведет на экран три строки текста с размерами шрифта 10, 20 и 30 точек.
FontStrikeThru – включает или выключает режим зачеркнутого текста:
_screen.FontStrikeThru=.t.
? "Старая цена"
_screen.FontStrikeThru=.f.
? "Новая цена"
FontBold – управляет жирностью текста:
_screen.FontBold=.t.
? "Жирный текст"
FontItalic – включает, выключает курсив:
_screen.FontItalic=.t.
? "Текст курсивом "
FontUnderline – включает или выключает подчеркивание текста:
_screen.FontUnderline=.t.
? "Подчеркнутый текст "
Тип шрифта задается свойством FontName. Так команда _screen.fontname=”Courier” установит текущим шрифтом шрифт Courier.
Поскольку длина текстовой строки, которую выводит на экран метод Print, зависит от текущих параметров шрифта, для определения размеров выводимой строки (ширины и высоты) предназначены методы: TextWidth и TextHeight. Например, после выполнения следующих команд:
_screen.fontname="Courier"
_screen.fontsize=20
s="Пример текстовой строки"
? _screen.textHeight(s)
? _screen.textWidth(s)
в результате мы получим: 26 и 368. То есть, текст будет занимать прямоугольник высотой 26 точек и шириной 368 точек. В дальнейшем эту информацию можно использовать для правильного расположения (свойствами CurrentX, CurrentY) следующего фрагмента текста.
Функции для рисования фигур
К основным графическим методам, использующихся для рисования фигур, относятся методы: Box, Circle, Line.
Метод line
Метод Line рисует линию, соединяющую две точки, либо .проводит линию от текущей точки к указанной.
_SCREEN.Line(X1, Y1, X2, Y2) – проводит линию от точки X1,Y1 к точке X2,Y2.
_SCREEN.Line(X, Y) – проводит линию от текущей точки до точки с координатами X,Y.
Линия отрисовывается стилем и толщиной заданными свойствами DrawStyle и DrawWidth, взаимодействие линии и фона в процессе отрисовки определяется свойством DrawMode.
В качестве примера приведем программу отрисовывающую график функции f(x)=sin(2**x), -2 <x<2 в виде ломаной кривой:
_screen.cls
x=-2
X1= 300 + 100*x
Y1= 200 + 100*f(x)
_screen.CurrentX=X1
_screen.CurrentY=Y1
For x= -2 to 2 step 0.01
X1= 300 + 100*x
Y1= 200 + 100*f(x)
_screen.line(X1, Y1)
endfor
function f
parameters x
return sin(2*pi()*x)
В данном примере в процессе отрисовывания логические координаты x, y преобразуются в физические (экранные) координаты X1, Y1 по следующим формулам:
X1= 300 + 100*x,
Y1= 200 + 100*y
Таким образом, происходит увеличение масштаба в 100 раз по обеим осям и сдвиг вправо на 300 точек и вниз на 200 точек. Вообще то в данном примере при отрисовывании график функции перевернут, поскольку в экранных координатах ось OY направлена вниз. Для того чтобы график отрисовывался правильно, координату y правильнее преобразовывать по формуле Y1 = 300 – 100*y.