Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курс лекций по дисциплине Объектно-ориентирован...doc
Скачиваний:
33
Добавлен:
01.07.2025
Размер:
14 Мб
Скачать
☆

3. Основные свойства, события и методы компонента Shape

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

рис. 44. Компонент Shape

Основное свойство этого компонента — Shape (форма), которое может принимать значения:

stRectangle - прямоугольник

stRoundRect - прямоугольник со скругленными углами

stEllipse - эллипс

stSquare - квадрат

stRoundSquare- квадрат со скругленными углами

stCircle - круг

Другое существенное свойство компонента — Brush (кисть). Это свойство является объектом типа TBrush, имеющим ряд подсвойств, в частности: цвет (Brush.Color) и стиль (Brush.Style) заливки фигуры. Третье из специфических свойство компонента Shape — Pen (перо), определяющее стиль линий.

4. Основные свойства, события и методы компонента Chart

Теперь рассмотрим компонент Chart. Этот компонент позволяет строить различные диаграммы и графики, которые выглядят очень эффектно. (см. рис. 45)

рис. 45. Компонент Chart

Компонент Chart является контейнером объектов Series типа TChartSeries — серий данных, характеризующихся различными стилями отображения. Каждый компонент может включать несколько серий. Если вы хотите отображать график, то каждая серия будет соответствовать одной кривой на графике. Если вы хотите отображать диаграммы, то для некоторых видов диаграмм можно наложить друг на друга несколько различных серий. Однако, и в этом случае вы можете задать для одного компонента Chart несколько серий одинаковых данных с разным типом диаграммы. Тогда, делая в каждый момент времени активной одну из них, вы можете предоставить пользователю выбор типа диаграммы, отображающей интересующие его данные.

Некоторые свойства компонента Chart в Инспекторе Объектов:

AllowPanning - Определяет возможность пользователя прокручивать наблюдаемую часть графика во время выполнения, нажимая правую кнопку мыши. Возможные значения: pmNone — прокрутка запрещена, pmHorizontal, pmVertical или pmBoth — разрешена соответственно прокрутка только в горизонтальном направлении, только в вертикальном или в обоих направлениях.

AllowZoom - Позволяет пользователю изменять во время выполнения мас­штаб изображения, вырезая фрагменты диаграммы или графика курсором мыши.

Title Foot - Определяет заголовок диаграммы

Foot - Определяет подпись под диаграммой. По умолчанию отсутст­вует. Текст подписи определяется подсвойством Text

Frame - Определяет рамку вокруг диаграммы

Legend - Легенда диаграммы — список обозначений

MarginLeft, MarginRight, MarginTop, MarginBottom - Значения левого, правого, верхнего и нижнего полей

BottomAxis, LeftAxis, RightAxis - Эти свойства определяют характеристики соответственно ниж­ней, левой и правой осей. Задание этих свойств имеет смысл для графиков и некоторых типов диаграмм

LeftWall, BottomWall, BackWall - Эти свойства определяют характеристики соответственно левой, нижней и задней граней области трехмерного отображения графика.

SeriesList - Список серий данных, отображаемых в компоненте.

ViewS - Разрешает или запрещает трехмерное отображение диаграммы

ViewSDOptions - Характеристики трехмерного отображения

ChartSDPercent - Масштаб трехмерности.

Рядом со многими из перечисленных свойств в Инспекторе Объектов расположены кнопки с многоточием, которые позволяют вызвать ту или иную страницу Редактора Диаграмм — многостраничного окна, позволяющего установить все свойства диаграмм. Вызов Редактора Диаграмм возможен также двойным щелчком на компоненте Chart или щелчком на нем правой кнопкой мыши и выбором команды Edit Chart во всплывшем меню.

Двойным щелчком на компоненте Chart вызывается окно Редактора Диаграмм на страницу Chart, которая имеет несколько закладок.

Закладка Series: Щелкниув на кнопке Add — вы добавляете серию, т.е. вы можете выбрать тип диаграммы или графика. Воспользовавшись закладкой Titles вы можете задать заголовок диаграммы, закладка Legend позволяет задать параметры отображения легенды диаграммы (списка обозначений) или вообще убрать ее с экрана, закладка Panel определяет вид панели, на которой отображается диаграмма, закладка 3D дает вам возможность изменить внешний вид вашей диаграммы: наклон, сдвиг, толщину и т.д.

Когда вы работаете с Редактором Диаграмм и выбрали тип диаграммы, в компонентах Chart на вашей форме отображается ее вид с занесенными в нее условными данными. Поэтому вы сразу можете наблюдать результат применения различных опций к вашему приложению, что очень удобно.

Страница Series, также имеющая ряд закладок, дает вам возможность выбрать дополнительные характеристики отображения серии. В частности, для круговой диаграммы на закладке Format полезно включить опцию Circled Pie, которая обеспечит при любом размере компонента Chart отображение диаграммы в виде круга. На закладке Marks кнопки группы Style определяют, что будет написано на ярлычках, относящихся к отдельным сегментам диаграммы: Value — значение, Percent — проценты, Label — названия данных и т.д.

Для задания отображаемых значений надо использовать методы серий Series. Остановимся только на трех основных методах.

Метод Clear очищает серию от занесенных ранее данных.

Метод Add: Add(Const AValue:Double; Const ALabel:String; AColor:TColor) позволяет добавить в диаграмму новую точку. Параметр AValue соответствует добавляемому значению, параметр ALabel — название, которое будет отображаться на диаграмме и в легенде, AColor — цвет. Параметр ALabel — не обязательный, его можно задать пустым: “…”.

Метод AddXY: AddXY(Const AXValue, AYValue: Double; Const ALabel: String; AColor: TColor) позволяет добавить новую точку в график функции. Параметры AXValue и AYValue соответствуют аргументу и функции. Параметры ALabel и AColor те же, что и в методе Add.

Эту процедуру можно включить в обработку щелчка какой-нибудь кнопки, в команду меню или просто в событие OnCreate формы. Операторы Clear нужны, если в процессе работы приложения вы собираетесь обновлять данные. Без этих операторов повторное выполнение методов Add и AddXY только добавит новые точки, не удалив прежние.