Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Содержание сайт... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Создание отчето... 65403
Модуль Forms 65175
Пример работы с... 64274
ТЕХНОЛОГИИ ДОСТ... 61821
Имитационное мо... 57742
Реклама
Сейчас на сайте
Гостей: 9
На сайте нет зарегистрированных пользователей

Пользователей: 13,083
новичок: tesli
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Моделирование работы класса персональных компьютеров на GPSS + Отчет + Б...
Выбор наилучших альтернатив с использованием методов оптимизации на Delp...
Моделирование процесса обеспечивающего надежность функционирования АСУ Т...

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
Ряды и точки



Мы подошли к самому главному — отображению значений диаграммы. Из-
вестно, что диаграмма может содержать не одну последовательность значе-
ний. Каждая такая последовательность представляет собой ряд, состоящий
из точек.
Точка отражает одно значение из последовательности значений определен-
ного ряда. Точки одного ряда могут быть соединены между собой линиями
или представлять собой отдельные плоские или объемные фигуры, это зави-
сит от выбора типа диаграммы. В любом случае точки имеют между собой
логическую связь и образуют ряды значений. Таким образом, при програм-
мировании значений диаграммы мы имеем дело как минимум с двумя ти-
пами объектов: это объекты, объединенные в коллекцию рядов
SeriesCollection, и объекты, объединенные в коллекцию точек Points. Кол-
лекция точек принадлежит ряду.
Как и любая коллекция, коллекция SeriesCollection обладает свойствами,
позволяющими определить количество элементов этой коллекции, и мето-
дами, обеспечивающими доступ к любому объекту этой коллекции. Метод
Item(i) коллекции SeriesCollection возвращает доступ к элементу Series кол-
лекции. Получив доступ к элементу коллекции, т. е. к ряду диаграммы, мы
имеем возможность настроить его внешний вид. Для этого, как и для анало-
гичных объемных или плоских элементов, используем объекты Border,
Interior и Fill, связанные с параметрами границ и внутренней области объ-
ектов, отображающих точки ряда диаграммы.
Доступ к ряду и его свойствам
var i:integer;
Series:=SeriesCollection(i) ;
Border:=Series.Border;
Interior:=Series.Interior;
Fill:=Series.Fill;



Используя эти свойства, мы можем изменить параметры линии границы
элементов, а также их заливку (рис. 14.15).

Рис. 14.15. Настройка элементов диаграммы
Подписи данных для точек ряда диаграммы также представляют собой гео-
метрические фигуры, содержащие текст. Доступ к ним обеспечивается по-
средством объекта DataLabels, который принадлежит объекту Series из кол-
лекции SeriesCollection. Их внешний вид определяется свойствами линии и
заливки, а также свойствами текста. Свойства текста определяются его ти-
пом, шрифтом, способом выравнивания в рамках прямоугольной области
объекта DataLabels, форматом отображения значений и углом поворота (на-
правлением).
Настройка свойств Подписей данных для точек ряда Диаграммы
DataLabels:variant;
// Выбор типа подписи
procedure T0KBottomDlg8.LabelsTypeChange(Sender: TObject);
begin
case LabelsType.Itemlndex of
0: XlDataLabelsType:=xlDataLabelsShowNone;
1: XlDataLabelsType:=xlDataLabelsShowValue;
2: XlDataLabelsType:=xlDataLabelsShowPercent;
3: XlDataLabelsType:=xlDataLabelsShowLabel;
4: XlDataLabelsType:=xlDataLabelsShowLabelAndPercent;
end;
Series.ApplyDataLabels(Type:=XlDataLabelsType);
end;
// Выбор числового формата для отображения значений
procedure TOKBottomDlg8.sNumberFormatChange(Sender: TObject);
begin
DataLabels:=Series.DataLabels;
DataLabels.NumberFormat:=sNumberFormat.Text;
end;
// Горизонтальное выравнивание текста
procedure TOKBottomDlg8.sHorizontalAlignmentChange(Sender: TObject);
begin
case sHorizontalAlignment.Itemlndex of
0: DataLabels.HorizontalAlignment:=xlHAlignCenter;
1: DataLabels.HorizontalAlignment:=xlHAlignLeft;
2: DataLabels.HorizontalAlignment:=xlHAlignRight;
end;
end;
// Вертикальное выравнивание текста
procedure TOKBottomDlg8.sVerticalAlignmentChange(Sender: TObject);
begin
case sHorizontalAlignment.Itemlndex of
0: DataLabels.VerticalAlignment:=xlVAlignBottom;
1: DataLabels.VerticalAlignment:=xlVAlignCenter ;
2: DataLabels.VerticalAlignment:=xlVAlignTop;
end;
end;
// Угол (направление) текста
procedure TOKBottomDlg8.sOrientationChange(Sender: TObject);
begin
DataLabels.Orientation:=sOrientation.Value;
end;



Настраивая эти свойства, можно существенно изменить внешний вид диа-
граммы, а возможность сочетать варианты выбора позволяет представить
информацию пользователю наиболее наглядно (рис. 14.16).

Рис. 14.16. Настройка подписей ряда диаграммы
Интересные возможности предоставляет применение формата, задаваемого
строкой символов и позволяющего задать необходимый вид для числового
значения. Для задания формата чисел можно использовать символы 0, #, ?,
$ и т. д. (их список ограничивается только вашей фантазией и требования-
ми пользователей). Формат чисел, показанных на рис. 14.16, задан следую-
щим оператором:
DataLabels.NumberFormat:='$000,00';



В рамках выбранного типа диаграммы объект Series дает возможность изме-
нять фигуру для точек ряда. Это осуществляется записью определенной
константы в свойство BarShape объекта Series. Следующая процедура позво-
ляет это сделать.
Изменение вида фигуры для точек ряда диаграммы
procedure TOKBottomDlg8.sBarShapeChange(Sender: TObject);
const xlPyramidToPoint=l;
begin
Series.BarShape:= xlPyramidToPoint;
end;



В данном случае мы устанавливаем отображение точки ряда в виде пирами-
ды (рис. 14.17).
Если внимательно рассмотреть диаграммы на рис. 14.16 и 14.17, то мы об-
наружим отклонение стиля второй точки от остальных точек этого ряда. Это
достигается путем изменения свойств выбранной точки данного ряда. Точки
ряда диаграммы объединены в коллекцию Points, свойства и методы кото-
рой обеспечивают доступ к любой точке ряда. Свойство Count этой коллек-
ции содержит количество элементов коллекции, а метод Item(i:integer) воз-
вращает ссылку на элемент коллекции. Чтобы не повторяться, достаточно
отметить, что свойства объекта Point в большей степени идентичны свойст-
вам объекта Series. Программирование свойств этого объекта более детально
представлено в исходном тексте приложения на сопроводительном компакт-
диске книги.
Рассмотрим еще одно свойство объекта Series, являющееся альтернативой
задания области исходных данных для построения диаграммы. Это свойство
имеет строковый тип и содержит формулу, по которой строится ряд диа-
граммы. Свойство Formula принадлежит непосредственно объекту Series.
Следующая процедура иллюстрирует его использование для получения вы-
ражения формулы (рис. 14.18).
Получение строки, содержащей формулу для заданного ряда
procedure TOKBottomDlg8.Buttonl6Click(Sender: TObject);
var eee_:string;
begin
eee_:=Series.Formula;
MessageBox(handle,pchar(eee_) , ' ' , 0 ) ;
end;




Рис. 14.17. Изменение вида фигуры для выбранного ряда

Рис. 14.18. Формула для построения ряда
Используя формулы для объекта Series, можно изменить область исходных
данных для построения ряда.
Следующий оператор изменяет границы области исходных данных построе-
ния для выбранного ряда диаграммы:
Series.FormulaLocal = '=SERIES(,,Лист1!R5C1:R5C7,2)';


Опубликовал Kest October 02 2009 19:29:25 · 0 Комментариев · 5283 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
RAS
Text3D
Таймер и секундомер
FormShape [Исходн...
FreeNet
GPSS World Studen...
Основы Delphi. Пр...
Программа предназ...
С# для профессион...
Экспорт базы данн...
Domen Name IP
100 компонентов о...
Электронный магаз...
PHP в примерах
Эффект лампы на р...
Xrumer 4 Platinum...
Averaging [Исходн...
Visual Studio 200...
Visual Basic Script
Task Shedule

Топ загрузок
Приложение Клие... 100468
Delphi 7 Enterp... 87029
Converter AMR<-... 20078
GPSS World Stud... 12803
Borland C++Buil... 11822
Borland Delphi ... 8600
Turbo Pascal fo... 7039
Visual Studio 2... 4999
Калькулятор [Ис... 4796
FreeSMS v1.3.1 3542
Случайные статьи
Панель управления ...
Интерфейс подпроце...
Вход в SQL*PLUS. ...
Пример: простое ши...
Вопросы и ответы
Инфографика очень ...
Самообучение маршр...
Запуск и начало ра...
Получение факса на...
Networking trouble...
Возможность доступа
конфигурации компь...
Каковы параметры с...
Выбор параметра в ...
Ввод массива
INDEX (ИНДЕКСИРОВАТЬ)
Модификации с бесп...
Настройка заголовка
Создать глобальный...
Интерфейс с базой ...
"." expected
Что напоминает тре...
Формирование запро...
UDP, что использов...
Структура объекта ...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?