Компонент отображения графической информации в delphi. Презентация по программированию в среде Delphi на тему: "Отображение графической информации в Delphi"
«Отображение графической информации в Delphi» План темы: 1.С С пппп оооо сссс оооо бббб ыыыы в в в в ыыыы вввв оооо дддд аааа г г г г рррр аааа фффф ииии чччч ееее сссс кккк оооо йййй ииии нннн фффф оооо рррр мммм аааа цццц ииии ииии в в в в D D D D eeee llll pppp hhhh iiii О О тттт оооо бббб рррр аааа жжжж ееее нннн ииии ееее к к к к аааа рррр тттт ииии нннн оооо кккк О О тттт оооо бббб рррр аааа жжжж ееее нннн ииии ееее г г г г ееее оооо мммм ееее тттт рррр ииии чччч ееее сссс кккк ииии хххх фффф ииии гггг уууу рррр П П оооо сссс тттт рррр оооо ееее нннн ииии ееее г г г г рррр аааа фффф ииии кккк оооо вввв и и и и д д д д ииии аааа гггг рррр аааа мммм мммм....
1. Способы вывода графической информации. В Delphi существует несколько способов вывода графической информации: В Вывод заранее приготовленных изображений (компоненты Image, Shape); П Построение графиков и диаграмм (компонент Chart и др.); Ф Формирование изображений программным способом (объект Canvas).
2.Отображение 2.Отображение картинок. Отображение картинок при помощи компонента Image мы рассмотрели в оооо дддд нннн оооо йййй и и и и зззз п п п п рррр ееее дддд ыыыы дддд уууу щщщщ ииии хххх т т т т ееее мммм.... Здесь мы рассмотрим пример осуществления простейшей анимации путем периодического изменения отображаемой картинки в компонентах Image. ПППП ееее рррр ееее йййй тттт ииии н н н н аааа п п п п рррр ииии мммм ееее рррр....
3.Отображение 3.Отображение геометрических фигур. И Из нескольких компонентов Shape можно создавать несложные рисунки. П Программно изменяя положение (.Left,.Top) размер (.Width,.Height) и цвет (Brush.Color) компонентов Shape в рисунке можно осуществить элементы простейшей анимации. Р Р Р Р аааа сссс сссс мммм оооо тттт рррр ееее тттт ьььь п п п п рррр ииии мммм ееее рррр....
4.Построение 4.Построение графиков и диаграмм. Диаграммы предназначены для более наглядного представления массивов численных данных, их визуального отображения и анализа. ПППП рррр ииии мммм ееее рррр.... Для построения диаграмм в Delphi имеется несколько компонентов, один из них компонент Chart (раздел TeeChart Std).
Графиков и диаграмм. Данные для отображения обычно передаются в Chart программно, пример: Series1.Clear; {очистить серию} for i:=1 to N do Series1.addxy(i, A[i], clGreen); Значение по оси X Значение по оси Y Подпись по оси X Цвет данных на диаграмме РР аааа сссс сссс мммм оооо тттт рррр ееее тттт ьььь п п п п рррр ииии мммм ееее рррр п п п п оооо сссс тттт рррр оооо ееее нннн ииии яяяя гггг рррр аааа фффф ииии кккк аааа ф ф ф ф уууу нннн кккк цццц ииии ииии y y y y = = = = S S S S iiii nnnn ((((xxxx))))
Далее: Лабораторная работа «««« ОООО тттт оооо бббб рррр аааа жжжж ееее нннн ииии ееее к к к к аааа рррр тттт ииии нннн оооо кккк и и и и г г г г ееее оооо мммм ееее тттт рррр ииии чччч ееее сссс кккк ииии хххх фффф ииии гггг уууу рррр, и и и и хххх а а а а нннн ииии мммм аааа цццц ииии яяяя »»»»....Задание: 1) Разработать приложение для осуществления простейшей анимации путем периодического изменения отображаемой картинки в компонентах Image. (Количество картинок не менее трех, картинки подобрать самостоятельно).
Далее: Лабораторная работа «««« ПППП оооо сссс тттт рррр оооо ееее нннн ииии ееее г г г г рррр аааа фффф ииии кккк оооо вввв и и и и д д д д ииии аааа гггг рррр аааа мммм мммм »»»»....Задание: 1)М одифицировать приложение из лабораторной работы 9 (Отображение данных в таблице). Добавить возможность отображения некоторых данных из таблицы на гистограмме или круговой диаграмме. 2) Построить график заданной функции.
Работа с графикой в Delphi это не только линии и рисунки, но также и и печать текстовых документов. Поэтому в Delphi работе с графикой нужно уделить немного времени. Работа с графикой в Delphi предполагает обращение к канве - свойству Canvas компонентов. Canvas Delphi это холст, который позволяет программисту иметь доступ к каждой своей точке (пикселу), и словно художнику отображать то, что требуется. Конечно, рисовать попиксельно для работы с графикой в Delphi не приходится, система Delphi предоставляет для мощные средства работы с графикой , облегчающие задачу программиста.
В работе с графикой в Delphi в распоряжении программиста находятся канва (холст, полотно - свойство Canvas Delphi компонентов), карандаш (свойство Pen ), кисть (свойство Brush) того компонента или объекта, на котором предполагается рисовать. У карандаша Pen и кисти Brush можно менять цвет (свойство Color) и стиль (свойство Style). Доступ к шрифтам предоставляет свойство канвы Font . Эти инструменты позволяют отображать как текст, так и достаточно сложные графики математического и инженерного содержания, а также рисунки. Кроме этого, работа с графикой позволяет использовать в Delphi такие ресурсы Windows как графические и видеофайлы.
Конечно, не все компоненты в Delphi имеют эти свойства. На вкладке Additional расположен специализированный компонент TImage , специально предназначенный для рисования, но также свойство Canvas имеют, например, такие компоненты как ListBox, ComboBox, StringGrid, а также и сама Форма, которая размещает наши компоненты! Кроме того, для печати документов Delphi обращается к свойству Canvas такого объекта как принтер.
Основное свойство такого объекта как Canvas Delphi - Pixels типа TColor , то есть это двумерный массив точек (пикселов), задаваемых своим цветом. Рисование на канве происходит в момент присвоения какой-либо точке канвы заданного цвета. Каждому пикселу может быть присвоен любой доступный для Windows цвет. Например, выполнение оператора
Image1.Canvas.Pixels:=clRed;
Приведёт к рисованию красной точки с координатами . Узнать цвет пиксела можно обратным присвоением:
Color:=Image1.Canvas.Pixels;
Тип TColor
определён как длинное целое (LongInt). Его четыре байта содержат информацию о долях синего (B), зелёного (G), и красного (R) цветов. В 16-ричной системе это выглядит так: $00BBGGRR
. Доля каждого цвета может меняться от 0 до 255. Поэтому чтобы отобразить максимально красную точку, ей нужно присвоить цвет $000000FF
.
Для стандартных цветов в Delphi определён набор текстовых констант. Увидеть его можно, открыв в Инспекторе Объектов свойство Color, например, той же Формы.
Следующая таблица содержит некоторые свойства и методы канвы:
Процедура TextOut(X, Y: Integer; const
Text: WideString); Производит вывод строки Text начиная с (X, Y) - левого верхнего пиксела текста. |
Свойство TextWidth(var
Text: String): Integer; Содержит длину строки Text в пикселах. |
Свойство TextHeight(var
Text: String): Integer; Содержит высоту строки Text в пикселах. |
Процедура MoveTo(X, Y: Integer); Производит перемещение позиции к пикселу с адресом (X, Y). |
Процедура LineTo(X, Y: Integer); Производит рисование прямой линии из точки текущей позиции к пикселу с адресом (X, Y). Адрес (X, Y) становится точкой текущей позиции. |
Процедура FillRect(const
Rect: TRect); Заполняет прямоугольник Rect на холсте, используя текущую кисть. Может использоваться, в том числе, для стирания части изображения на холсте. |
Напишем, используя только эти методы канвы, приложение для изображения на канве компонента Image текста, который вводится в компонент Memo :
Первое, что мы сделаем, это инициализацию переменных при старте программы. Необходимо определить размеры области рисования (создадим для этого глобальную переменную Rect типа TRect) и сделать цвет фона Image белым:
procedure
TForm1.FormCreate(Sender: TObject);
begin
Rect.Left:=0;
Rect.Top:=0;
Rect.Right:=Image1.Width;
Rect.Bottom:=Image1.Height;
Image1.Canvas.Brush.Color:=clWhite;
end
;
Затем нарисуем рамку по сторонам Image:
procedure
TForm1.page;
begin
with
Image1.Canvas do
begin
MoveTo(0, 0);
LineTo(Image1.Width-1, 0);
LineTo(Image1.Width-1, Image1.Height-1);
LineTo(0, Image1.Height-1);
LineTo(0, 0);
end
;
end
;
Попробуем, что получилось. Всё работает, но рамка пока не выводится. Поэтому добавим процедуру page в в процедуру FormCreate . Теперь красиво. Далее напишем простую процедуру стирания, очищения Image. Её нужно будет вызывать перед любым обновлением изображения, иначе предыдущее и последующее изображения будут перекрываться.
procedure
TForm1.clearing;
begin
Image1.Canvas.FillRect(Rect); //Прямоугольник Rect
заполняется белым цветом, изображение стирается.
end
;
Теперь пришла очередь непосредственно процедуры вывода текста. Начнём выводить текст от точки (3, 3) - верхнего левого угла листа, с небольшим отступом в 3 пиксела. Каждую последующую строку будем смещать на высоту строки:
procedure
TForm1.prn;
var
i: Integer;
begin
with
Image1.Canvas do
for
i:=1 to
Memo1.Lines.Count do
TextOut(3, 3+(i-1)*TextHeight("A"), Memo1.Lines);
end
;
Теперь всё готово для вывода текста. Делать это будем по событию OnChange:
procedure
TForm1.Memo1Change(Sender: TObject);
begin
clearing;
prn;
page;
end
;
Ну и напоследок процедура изменения размера шрифта:
procedure
TForm1.Edit1Change(Sender: TObject);
begin
Memo1.Font.Size:=UpDown1.Position;
Image1.Canvas.Font.Size:=UpDown1.Position;
Memo1Change(Sender);
end
;
Можно модифицировать эту программу для вывода текста на печать. Для работы с принтером нужно подключить модуль Printers :
unit Unit1;
Interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Printers
;
При работе с принтером как с полотном для начала печати вызывается метод BeginDoc , затем производится вывод документа, завершается печать вызовом метода EndDoc :
Printer.BeginDoc;
with
Printer.Canvas do
begin
... Печать документа...
end
;
Printer.EndDoc;
Ширина и высота полотна принтера доступны через свойства Printer.PageWidth и Printer.PageHeight . Закончить печать на одной странице и начать печатать на другой можно с помощью метода Printer.NewPage .
Для отображения графической информации в библиотеке Delphi предусмотрены компоненты, список которых дан в табл. 6.
Таблица 6
Компоненты отображения графической информации
Компонент | Страница | Описание |
Image (изображение) | Additional | Используется для отображения графики |
PaintBox (окно для рисования) | System | Используется для создания на форме некоторой области, в которой можно рисовать |
DrawGrid (таблица рисунков) | Additional | Используется для отображения в строках и столбцах нетекстовых данных |
Chart (диаграммы и графики) | Additional | Компонент принадлежит к семейству компонентов TeeChart, которые используются для создания диаграмм и графиков |
Chartfx (диаграммы и графики) | ActiveX | Редактор диаграмм и графиков |
FIBook (страницы Excel) | ActiveX | Компонент ввода и обработки числовой информации |
VtChart (диаграммы) | ActiveX | Окно построения диаграмм |
Кроме того, отображать и вводить графическую информацию можно на поверхности любого оконного компонента, имеющего свойство Canvas - канва.
Таблицы изображений – компоненты DrawGrid и StringGrid
Компонент DrawGrid используется для создания в приложении таблицы, которая может содержать графические изображения. Этот компонент подобен компоненту StringGrid, поскольку последний является производным от DrawGrid. Поэтому в DrawGrid присутствуют все свойства, методы, события компонента StringGrid, кроме относящихся к тексту, т.е. кроме свойств Cells , Cols, Rows, Objects. С этой точки зрения компонент StringGrid обладает существенно большими возможностями, чем DrawGrid, поскольку он может хранить в ячейках и изображения, и тексты. А если вы захотите внести текст в какие-то ячейки DrawGrid, то вам надо будет использовать для этого методы вывода текста на канву, что не очень удобно.
Компоненты DrawGrid и StringGrid имеют канву Canvas, на которой можно размещать изображения.
Имеется метод Cell-Rect, который возвращает область канвы, отведенную под заданную ячейку. Этот метод определен как
function CellRect(ACol, ARow: Longint): TRect;
где ACol и ARow - индексы столбца и строки, начинающиеся с 0, на пересечении которых расположена ячейка. Возвращаемая этой функцией область является областью канвы, в которой можно рисовать необходимое изображение. Например, оператор
DrawGridl.Canvas.CopyRect(DrawGridl.CellRect(1,1),
BitMap.Canvas,Rect(0,0,BitMap.Height,BitMap.Width));
копирует методом CopyRect в ячейку (1,1) таблицы DrawGridl изображение из компонента BitMap. Эта ячейка является второй слева и второй сверху в таблице, поскольку индексы начинаются с 0. Учтите, что если размеры ячейки меньше, чем размер копируемого изображения, то в ячейке появится только левая верхняя часть картинки.
Изображение на канве компонентов DrawGrid и StringGrid, как и на канве любого компонента, подвержено стиранию при перекрытии окна приложения другими окнами или, например, при сворачивании приложения.
Удобным способом занесения изображений в ячейки DrawGrid является использование обработчика событий OnDrawCell. Эти события наступают для каждой ячейки таблицы в момент ее перерисовки. Заголовок обработчика имеет вид:
procedure TForml.DrawGridlDrawCell(Sender: TObject;
ACol, ARow: Integer; Rect: TRect; State: TGridDrawState)
Параметр State указывает состояние ячейки. Он является множеством, которое может содержать следующие элементы: gdSelected - выделенная ячейка, gdFocused - ячейка, находящаяся в фокусе, gdFixed - ячейка в фиксированной области таблицы. Параметр State можно использовать для различного характера отображения ячеек в различных состояниях.
Компонент Shape
Компонент Shape только условно может быть отнесен к средствам отображения графической информации, поскольку просто представляет собой различные геометрические фигуры, соответствующим образом заштрихованные. Основное свойство этого компонента - Shape (форма), которое может принимать значения:
StRectangle – прямоугольник;
StSquare – квадрат;
StRoundRect - прямоугольник со скругленными углами;
StRouhdSquare - квадрат со скругленными углами;
StEllipse – эллипс;
StCircle – круг.
Другое существенное свойство компонента - Brush (кисть). Это свойство является объектом типа TBrush, имеющим ряд подсвойств, в частности цвет (Brush.Color) и стиль (Brush.Style) заливки фигуры. Заливку при некоторых значениях Style вы можете видеть на рис. 3.2. Третье из специфических свойство компонента Shape - Pen (перо), определяющее стиль линий.
Компонент Chart
Теперь рассмотрим компонент Chart. Этот компонент позволяет строить различные диаграммы и графики, которые выглядят очень эффектно. Компонент Chart имеет множество свойств, методов, событий, так что если все их рассматривать, то этому пришлось бы посвятить целую главу. Поэтому ограничимся рассмотрением только основных характеристик Chart. А с остальными вы можете ознакомиться во встроенной справке Delphi или просто опробовать их, экспериментируя с диаграммами.
Компонент Chart является контейнером объектов Series - наследников класса TChartSeries. Каждый такой объект представляет серию данных, характеризующихся определенным стилем отображения: тем или иным графиком или диаграммой. Каждый компонент Chart может включать несколько серий. Если вы хотите отображать график, то каждая серия будет соответствовать одной кривой на графике. Если вы хотите отображать диаграммы, то для некоторых видов диаграмм можно наложить друг на друга несколько различных серий, для других (например для круговых диаграмм) это, вероятно, будет выглядеть некрасиво. Однако и в этом случае вы можете задать для одного компонента Chart несколько серий одинаковых данных с разным типом диаграммы. Тогда, делая в каждый момент времени активной одну из них, вы можете предоставить пользователю выбор типа диаграммы, отображающей интересующие его данные.
Разместите один или два компонента Chart на форме и посмотрите открывшиеся в Инспекторе Объектов свойства. Приведем пояснения некоторых из них.
AllowPanning - определяет возможность пользователя прокручивать наблюдаемую часть графика во время выполнения, нажимая правую кнопку мыши. Возможные значения: pmNone - прокрутка запрещена, pmHori/ontal, pm Vertical или pmBoth - разрешена соответственно прокрутка только в горизонтальном направлении, только в вертикальном или в обоих направлениях.
AhowZoom - позволяет пользователю изменять во время выполнения масштаб изображения, вырезая фрагменты диаграммы или графика курсором мыши. Если рамка фрагмента рисуется вправо и вниз, то этот фрагмент растягивается на все поле графика. А если рамка рисуется вверх и влево, то восстанавливается исходный масштаб.
Title - определяет заголовок диаграммы.
Foot - определяет подпись под диаграммой. По умолчанию отсутствует. Текст подписи определяется подсвойством Text.
Frame - определяет рамку вокруг диаграммы.
Рядом со многими из перечисленных свойств в Инспекторе Объектов расположены кнопки с многоточием, которые позволяют вызвать ту или иную страницу Редактора Диаграмм - многостраничного окна, позволяющего установить все свойства диаграмм. Вызов Редактора Диаграмм возможен также двойным щелчком на компоненте Chart или щелчком на нем правой кнопкой мыши и выбором команды Edit Chart во всплывшем меню.
Cделайте двойной щелчок на верхнем компоненте Chart. Вы попадете в окно Редактора Диаграмм на страницу Chart, которая имеет несколько закладок. Прежде всего вас будет интересовать на ней закладка Series. Щелкните на кнопке Add - добавить серию. Вы попадете в окно, в котором вы можете выбрать тип диаграммы или графика. В данном случае выберите Pie - круговую диаграмму. Воспользовавшись закладкой Titles вы можете задать заголовок диаграммы, закладка Legend позволяет задать параметры отображения легенды диаграммы (списка обозначений) или вообще убрать ее с экрана, закладка Panel определяет вид панели, на которой отображается диаграмма, закладка 3D дает вам возможность изменить внешний вид вашей диаграммы: наклон, сдвиг, толщину и т.д.
Когда вы работаете с Редактором Диаграмм и выбрали тип диаграммы, в компонентах Chart на вашей форме отображается ее вид с занесенными в нее условными данными. Поэтому вы сразу можете наблюдать результат применения различных опций к вашему приложению, что очень удобно.
Страница Series, также имеющая ряд закладок, дает вам возможность выбрать дополнительные характеристики отображения серии. В частности, для круговой диаграммы на закладке Format полезно включить опцию Circled Pie, которая обеспечит при любом размере компонента Chart отображение диаграммы в виде круга. На закладке Marks кнопки группы Style определяют, что будет написано на ярлычках, относящихся к отдельным сегментам диаграммы: Value - значение, Percent - проценты, Label - названия данных и т.д.
Вы можете, если хотите, добавить на этот компонент Chart еще одну тождественную серию, нажав на закладке Series страницы Chart кнопку Clone, а затем для этой новой серии нажать кнопку Change (изменить) и выбрать другой тип диаграммы, например Bar.
Выйдите из Редактора Диаграмм, выделите в вашем приложении нижний компонент Chart и повторите для него задание свойств с помощью Редактора Диаграмм. В данном случае вам надо будет задать две серии, если хотите отображать на графике две кривые, и выбрать тип диаграммы Line. Поскольку речь идет о графиках, вы можете воспользоваться закладками Axis и Walls для задания координатных характеристик осей и трехмерных граней графика.
На этом проектирование внешнего вида приложения завершается. Осталось написать код, задающий данные, которые вы хотите отображать. Для тестового приложения давайте зададим в круговой диаграмме просто некоторые константные данные, а в графиках - некоторые функции.
Для задания отображаемых значений надо использовать методы серий 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.
Таким образом, процедура, обеспечивающая загрузку данных в нашем примере, может иметь вид:
const Al=155; A2=251; A3=203; A4=404; var i:word; begin
With Seriesl do begin
Add(Al,"Цех l",clYellow);
Add(A2,"Цех 2",clBlue);
Add(A3,"Цех 3",clRed);
Add(A4,"Цех 4",clPurple); end;
Series2.Clear; SeriesS.Clear; for i:=0 to 100 do begin
Series2.AddXY(0.02*Pi*i,sin(0.02*Pi*i)
SeriesS.AddXY(0.02*Pi*i,cos(0.02*Pi*i) end;
ClRed); ,clBlue);
Операторы Clear нужны, если в процессе работы приложения вы собираетесь обновлять данные.
На этом мы закончим знакомство с компонентом Chart. Правда, мы рассмотрели только малую часть его возможностей.
Слайд 2
«Отображение графической информации в Delphi» План темы: Способы вывода графической информации в Delphi. Отображение картинок. Отображение геометрических фигур. Построение графиков и диаграмм.
Слайд 3
1. Способы вывода графической информации. В Delphi существует несколько способов вывода графической информации: Вывод заранее приготовленных изображений (компоненты Image, Shape); Построение графиков и диаграмм (компонент Chart и др.); Формирование изображений программным способом (объект Canvas).
Слайд 4
Отображение картинок. Отображение картинок при помощи компонента Imageмы рассмотрели в одной из предыдущих тем. Здесь мы рассмотрим пример осуществления простейшей анимации путем периодического изменения отображаемой картинки в компонентах Image. Перейти на пример.
Слайд 5
Отображение геометрических фигур. Отображениепростейших геометрических фигур на форме обеспечивает компонент Shape.
Слайд 6
Отображение геометрических фигур. Основные свойства компонента Shape:
Слайд 7
Отображение геометрических фигур. Из нескольких компонентов Shape можно создавать несложные рисунки. Программно изменяя положение (.Left, .Top) размер(.Width, .Height) и цвет (Brush.Color)компонентов Shape в рисунке можно осуществить элементы простейшей анимации. Рассмотреть пример.
Слайд 8
Построение графиков и диаграмм. Диаграммы предназначены для более наглядного представления массивов численных данных, их визуального отображения и анализа. Пример. Для построения диаграмм в Delphi имеется несколько компонентов, один из них компонент Chart (раздел TeeChart Std).
Слайд 9
Построение графиков и диаграмм. Вид компонента Chart после его установки на форму:
Слайд 10
Построение графиков и диаграмм. Кроме «Инспектора объектов» доступ к свойствам компонента Chart можно получить открыв специальное окно диалога (правая кнопкана компоненте \ Edit Chart…) Добавить серию данных Изменить тип диаграммы
Слайд 11
Построение графиков и диаграмм. Выбор типа диаграммы:
Слайд 12
Построение графиков и диаграмм. Установка свойств для осей координат (Axis):
Слайд 13
Построение графиков и диаграмм. Данные для отображения обычно передаются в Chart программно, пример: Series1.Clear; {очистить серию} for i:=1 to N do Series1.addxy(i, A[i], ‘’, clGreen); Значение по оси X Значение по оси Y Подпись по оси X Цвет данных на диаграмме Рассмотреть пример построения графика функции y = Sin(x)
Слайд 14
Далее: Лабораторная работа № 13.1. «Отображение картинок и геометрических фигур, их анимация». Задание: 1) Разработать приложение для осуществления простейшей анимации путем периодического изменения отображаемой картинки в компонентах Image. (Количество картинок не менее трех, картинки подобрать самостоятельно).
Слайд 15
Задание: 2) Придумать и нарисовать рисунок из компонентов Shape. Программно изменяя положение, размер или цвет компонентов Shape в рисунке осуществить элементы простейшей анимации.
Слайд 16
Далее: Лабораторная работа № 12.2. «Построение графиков и диаграмм». Задание: Модифицировать приложение из лабораторной работы № 9 (Отображение данных в таблице). Добавить возможность отображения некоторых данных из таблицы на гистограмме или круговой диаграмме. 2) Построить график заданной функции.
Посмотреть все слайды
«Отображение графической информации в Delphi»
План темы:
1. Способы вывода графической
информации в Delphi.
2. Отображение картинок.
3. Отображение геометрических
фигур.
В Delphi существует несколько способов
вывода графической информации:
Вывод заранее приготовленных
изображений (компоненты Image,
Shape);
Построение графиков и диаграмм
(компонент Chart и др.);
Формирование изображений
программным способом (объект
Canvas).2. Отображение картинок.
Отображение картинок при помощи
компонента Image мы рассмотрели в
одной из предыдущих тем.
Здесь мы рассмотрим пример
осуществления простейшей анимации
путем периодического изменения
отображаемой картинки в
компонентах Image.
Перейти на пример.
Отображение простейших
геометрических фигур на форме
обеспечивает компонент Shape.3. Отображение геометрических фигур.
Основные свойства компонента Shape:
Brush
Pen
Shape
Цвет (.Color) и стиль (.Style) для
заполнения фигуры.
Цвет (.Color), стиль (.Style), ширина
(.Width) и способ вывода (.Mode) линий
фигуры.
Вид геометрической фигуры.3. Отображение геометрических фигур.
Из нескольких компонентов Shape
можно создавать несложные рисунки.
Программно изменяя положение
(.Left, .Top) размер (.Width, .Height) и
цвет (Brush.Color) компонентов Shape
в рисунке можно осуществить
элементы простейшей анимации.
Рассмотреть пример.4. Построение графиков и диаграмм.
Диаграммы предназначены для
более наглядного представления
массивов численных данных, их
визуального отображения и анализа.
Пример.
Для построения диаграмм в Delphi
имеется несколько компонентов,
один из них компонент Chart (раздел
TeeChart Std).4. Построение графиков и диаграмм.
Вид компонента Chart после его
установки на форму:4. Построение графиков и диаграмм.
Кроме «Инспектора объектов» доступ к
свойствам компонента Chart можно
получить открыв специальное окно
диалога (правая кнопка на компоненте \
Edit Chart…)
Добавить
серию данных
Изменить тип
диаграммы4. Построение графиков и диаграмм.
Выбор типа диаграммы:4. Построение графиков и диаграмм.
Установка свойств для осей координат
(Axis):4. Построение графиков и диаграмм.
Данные для отображения обычно
передаются в Chart программно,
пример:
Series1.Clear; {очистить серию}
for i:=1 to N do
Series1.addxy(i, A[i], ‘’, clGreen);
Значение по
оси X
Значение по
оси Y
Подпись
по оси X
Цвет данных
на диаграмме
Рассмотреть пример построения
графика функции y = Sin(x)Далее:
Лабораторная работа № 13.1.
«Отображение картинок и геометрических
фигур, их анимация».
Задание:
1) Разработать приложение для осуществления
простейшей анимации путем периодического
изменения отображаемой картинки в
компонентах Image. (Количество картинок не
менее трех, картинки подобрать
самостоятельно).Задание:
2) Придумать и нарисовать рисунок из
компонентов Shape. Программно
изменяя положение, размер или цвет
компонентов Shape в рисунке
осуществить элементы простейшей
анимации.Далее:
Лабораторная работа № 13.2.
«Построение графиков и диаграмм».
Задание:
1) Модифицировать приложение из
лабораторной работы № 9 (Отображение
данных в таблице). Добавить возможность
отображения некоторых данных из таблицы
на гистограмме или круговой диаграмме.
2) Построить график заданной функции.