Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Высокоуровневые методы информатики и программир...docx
Скачиваний:
25
Добавлен:
12.11.2019
Размер:
6.53 Mб
Скачать

2.3.7.6. Простая диаграмма (Gauge)

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

С пецифичные свойства

Kind ‑ вид диаграммы: gkHorizontalBar (горизонтальная), gkVerticalBar (вертикальная), gkPie (секторная), gkNeedle (спидометр), gkText (текст).

ForeColor, BackColor ‑ цвет индикатора и фона.

Progress ‑ значение параметра в процентном отношении.

MinValue, MaxValue ‑ минимально и максимально допустимое значение.

ShowText ‑ вывод текста на диаграмме (True).

Пример вывода минутного секундомера:

Procedure TForm1.Button1Click(Sender: TObject); //кнопка запуска

Var i:Integer; Begin Gauge3.MinValue:=0; Gauge3.MaxValue:=60;

Gauge3.Kind:=gkPie; Gauge3.ShowText:=False; I:=GetTickCount;

While GetTickCount<=I+60000 //цикл на одну минуту (п.1.7.3)

Do Gauge3.Progress:=(GetTickCount‑I) Div 1000 End;

2 .3.7.7. Диаграмма (Chart)

К омпонент (панель Additional) позволяет строить дву‑ и трехмерные диаграммы. Создать диаграмму можно двумя способами: мастером диаграмм и программными средствами Паскаля (п. 2.2.8.4).

Мастер диаграмм вызывается командой File/New/ Busi­ness/Tee­ChartWizard. После выбора источника (база данных или нет), типа диаграммы (рис.2.3.7.7), вывода леген­ды и меток появляется но­вая форма с объектом Chart1. Настройка этого объ­екта осуществляется ре­дак­тором, который вызы­вается двойным щелчком по объекту Chart.

Рис. 2.3.7.7.Окно выбора типа диаграммы

При программном варианте можно сразу разместить объект Chart и настроить его редактором. Редактор имеет две страницы (рис.2.3.7.8).

Р ис. 2.3.7.8. Страницы редактора диаграмм

Страница Chart (диаграмма) содержит следующие панели:

Series (ряд данных) ‑ объединяет ряд диаграмм в одну кнопкой Add, при этом над значениями можно выполнять различные арифметические и другие операции.

General (общие) ‑ элементы управления: экспорт (Export), сдвиг границы изображения (Margins), масштабирование (Zoom), прокрутка (Allow Scroll).

Axis (оси) ‑ координаты осей, масштаб, заголовки, шаги сетки и др.

Titles (заголовки) ‑ оформление заголовка, положение, шрифты, цвет.

Legend (легенда) ‑ внешний вид и содержание легенды.

Panel (панель) ‑ форма и вид основы, на которой находится диаграмма.

Paging (страницы) ‑ разделение диаграммы на страницы, подбирая значе­ния числа на странице (Points per Page).

Walls (границы) ‑ цвет и размеры границ диаграммы.

3D (объем) ‑ вращение и масштабирование объемной диаграммы.

Страница Series (ряды данных) ‑ задаются параметры каждого ряда (графика), добавленного при помощи страницы Chart. Выбор наст­раиваемо­го ряда производится из верхнего открывающегося списка. Страница имеет следующие панели:

Format (формат) ‑ внешний вид: линии, цвета и др.

Point (точки) ‑ размеры, стили, рамки элементов диаграммы.

General (общие) ‑ элементы управления: показ легенды и вид курсора (General), форматы вывода чисел и процентов (Formats), число и расположение осей и текущего времени.

Marks (метки) ‑ внешний вид меток (Label ‑ наименование легенд).

Data Source (источник данных) ‑ указывает тип источника данных: Random Values (генерация случайных чисел), No Data (отказ от генерации значений), Function (результат применения выбранной функции к значениям ряда).

Свойство Series содержит описание числовых рядов (отсчет с нуля). Каждый элемент массива типа TPointSeries описывает один ряд.

Специфичные методы

Add(V:Double, L:String,C:TColor):Longint ‑ добавляет в ряд новое значение V с названием L и выводит цветом C.

Delete(N) ‑ удаляет значение под номером N из ряда.

Clear ‑ удаление всех значений из ряда.

Пример формирования диаграммы (изображенной в заставке данного пункта) из двух плоских линейных графиков, значения для которых берутся из строк многостроковых полей Memo1 и Memo2.

procedure TForm1.Button1Click(Sender: TObject); //кнопка очистки рядов

Begin Chart1.Series[0].Clear; Chart1.Series[1].Clear; End;

Procedure TForm1.Button2Click(Sender:TObject);// вывод графиков

Var i:Integer; Begin For i:=0 To Memo1.Lines.Count‑1 Do //первый ряд

Chart1.Series[0].Add(StrToFloat(Memo1.Lines[i]), IntToStr(i),clRed);

For i:=0 To Memo2.Lines.Count‑1 Do//формирование значений второго ряда Chart1.Series[1].Add(StrToFloat(Memo2.Lines[i]), IntToStr(i),clGreen); End;