Компонента за прикажување графички информации во делфи. Презентација на тема „Прикажување графички информации во Делфи“. Список на компоненти за прикажување на графички информации

ЛАБОРАТОРСКА РАБОТА

ПРЕДМЕТ: « Графика воДелфи– изградба на наједноставните
геометриски форми“

Кратки информацииод теоријата

Delphi му обезбедува на развивачот три начини за прикажување графика:

    зацртување додека програмата работи

    употреба на претходно креирана графика

    создавање слики со помош на графички компоненти

За изградба на графикони, создадени се посебни класи кои обезбедуваат алатки и методи за цртање: алатките се опишани во три класи - Tfont, Tpen, Tbrush; Областа за цртање и методите се обезбедени од класата Tcanvas.

КласаТфонт– ги одредува карактеристиките на фонтот што се користи за прикажување на текст на платното. Својствата на класата се опишани во делот „Основни својства достапни за повеќето компоненти“.

КласаТпен– ги одредува карактеристиките на пенкалото (моливот) со кое се цртаат линии.

Својствакласа Тпен:

Боја:Tcolor – боја на линијата (стандардно – црна)

Ширина:цел број – дебелина на линијата во пиксели;

Стил = (psSolid, psDash, psDot, psdashDot, psClear) – го дефинира стилот на линијата (цврста, испрекината, точки, цртичка, невидлива)

КласаЧетка– ги поставува карактеристиките на четката што ја бојадисува површината на сликата.

Својствакласа Четка:

Боја:Tcolor – боја на четка (стандардно – бела)

Стил– шема на четка, може да ги земе следните вредности:

BsSolid – цврста боја

BsClear – недостаток на засенчување

BsВертикални – вертикални линии

BsBdiaagonal – десни дијагонални линии

BsDiagCross – коси ќелија

BsХоризонтални – хоризонтални линии

BsFdiagonal – леви дијагонални линии

BsCross – кафез

КласаTcanvas– ја одредува површината на која е поставена креираната слика и алатките со кои се креира сликата: фонт, молив, четка.

Стандардно, целата област на клиентот на формуларот се користи како работна површина (платно) (без заглавјето, главното мени и линиите за лизгање на формуларот), но можете да доделите помали работни области во формуларот користејќи компоненти PaintBoxили Слика. Потеклото на координатата на платното е горниот лев агол на работната површина, ширината на работната површина се одредува според имотот Ширина на клиентот, висина – имот Висина на клиентот.

Својствакласа Tcanvas:

Платно:Tcanvas – ја дефинира областа за цртање

Четка:Tbrush – четка за сликање затворени форми

Фонт:Tfont – фонт за прикажување текст на платно

Пенкало:Tpen – молив (пенкало) за цртање

PenPos:Tpoint – моментална положба на невидливиот курсор на платното

Коментар : Тип Tpoint – дефиниран на следниов начин:

Тип Точка = рекорд

Пиксели: Tcolor - ги поставува боите на пикселите на платното, X, Y - координатите на пикселите. Својството Pixels е погодно за користење за исцртување графикони користејќи точки од избраната боја.

Главни методи на класата TCanvas

    постапка MoveTo(x,y:цел број); - го поместува пенкалото без цртање права до точка со координати (x, y).

    Постапка LineTo(x,y:цел број); - повлекува права од моменталната точка до точката со координати (x, y).

Пример : Нацртајте дијагонална сина линија на обликот од горниот лев агол на обликот до долниот десен агол.

Пенкало.боја:= cblue;

MoveTo (0,0); LineTo (ClientWidth, ClientHeight);

    постапка Правоаголник(x1,y1,x2,y2:цел број); - црта правоаголник: x1,y1 – координати на горниот лев агол; x2, y2 се координатите на долниот десен агол.

Пример : Нацртајте квадрат со жолта сенка со страна од 60 пиксели во средината на обликот.

var Xc,Yc: цел број; //

Xc:=ClientWidth div 2;

Xy:=ClientHeight div 2;

Платно.Четка.боја:=жолта;

Платно.правоаголник (xc-30,Yc-30,xc+30,Yc+30);

    постапка Елипса(x1,y1,x2,y2:цел број); - црта елипса впишана во правоаголник со наведените координати.

Пример : нацртајте елипса впишана во компонентата PaintBox.

PaintBox1.Canvas.Pen.Width:=4; //широчина на линијата = 4 пиксели

PaintBox1.Canvas.Ellipse(0,0, PaintBox1. ClientWidth, PaintBox1. ClientHeight);

    постапка Многуаголник(); - црта затворен многуаголник одреден со низа од координати.

Пример : нацртајте исполнет дијамант што ги поврзува средните точки на страните на обликот

Var Xc,Yc:цел број; // координати на центарот на клиентската област на формуларот

Xc:=ClientWidth div 2;

Xy:=ClientHeight div 2;

Платно.Четка.Боја:=Rgb(275,140,70); // портокалова боја засенчување

Платно.Полигон();

крај;

    Постапка Лак(x1,y1,x2,y2,x3,y3,x4,y4:цел број); - го прикажува лакот на елипсата ограничена со правоаголник (x1, y1, x2, y2). Лакот се прикажува од точка со координати (x3,y3) до точка со координати (x4,y4) противво насока на стрелките на часовникот.

Пример : нацртајте елипсовиден лак што ја поврзува средината на горната страна на компонентата
PaintBox со средината на неговата десна страна.

Постапка Tform1.Button1Click(Sender:Tobject);

Var X3,y3,x4,y4: Цел број;

Со PaintBox1 направи

Платно.Пен.Боја:= clБела;

Платно.Пен.Ширина:= 3;

Canvas.rectangle(0, 0, PaintBox1.ClientWidth, PaintBox1.ClientHeight);

X3:= ClientWidth div 2;

X4:= Ширина на клиентот;

Y4:= ClientHeight div 2;

Платно.Пен.Боја:= clMaroon;

Canvas.ARC(0, 0, PaintBox1.ClientWidth, PaintBox1.ClientHeight, x3, y3, x4, y4);

Крај;

    постапка Акорд(x1,y1,x2,y2,x3,y3,x4,y4:цел број); - црта акорд - права линија што поврзува 2 точки од елипсата: точка со координати (x3, y3) со точка (x4, y4).

Пример : Заменете го методот Chord во примерот даден за методот ARC и добијте го следниот резултат.

    постапка Пита(x1,y1,x2,y2,x3,y3,x4,y4:цел број); - црта елипса отсечка која го поврзува центарот на елипсата со координатите (x3,y3) и (x4,y4).

Пример : Во примерот даден за методот ARC, замислете го методот PIE и добијте го овој резултат.

    постапка TextOut(x,y:цел број;Текст:низа); - ја прикажува низата предадена во параметарот Текст во правоаголник чиј горен лев агол е наведен x,y координати. Карактеристиките на фонтот се поставени со алатката Font.

Пример : напишете го името на нацртаниот график на дното на формуларот.

Платно.Фонт.Висина:=20 ; //висина на знаци 20 пиксели

Платно.Фонт.Боја:=сино;

Canvas.TextOut(10, ClientHeight-24, „график на функцијата SIN(X)“);

Графички компоненти

Делфи нуди голем број на готови компоненти кои ви овозможуваат да се подобрите кориснички интерфејс. Овие компоненти се наоѓаат на страницата ДополнителниИ Системпалети на компоненти.

КомпонентаСлика(класТимаж) – создаден за прикажување графички слики складирани во надворешни датотеки со екстензии:

    Ико (икона, пиктограм);

    Bmp (битмапа, битмапа);

    Wmf, .emf (метафил);

    Jpg, .jpeg (JPEG компресирана слика).

Основни својства :

Автоматска големина:boolean – кога е поставено на true, компонентата ги прилагодува своите димензии на големината на вчитаната слика; стандардното е лажно.

Истегнете се:boolean - ако е точно, вчитаната вредност ја зафаќа целата површина на компонентата; стандардното е лажно.

Платно:Tcanvas – се користи за цртање во внатрешноста на компонентата за време на извршувањето на програмата.

Слика:Tpicture - Ја дефинира сликата поставена во компонентата.

Основни методикласа Слика:

Постапка LoadFromFile(Име на датотека: низа); - вчитува слика од датотека со име Filename во компонентата.

Постапка SaveToFile(Име на датотека: низа); -ја зачувува сликата од компонентата во датотека со име Filename.

КомпонентаPaintBox - дефинира правоаголна површина за цртање. Главниот имот е Платно, достапни се сите методи од класата Tcanvas, нема независни својства.

Пример : нацртајте жолта елипса впишана во компонентата PaintBox1.

Постапка Tform1Button1Click(испраќач:Tobject);

Со PaintBox1.Canvas do

Четка.Боја:=жолта;

Ellipse(0,0,PaintBox1.ClientWidth, PaintBox1.ClientHeight);

крај;

КомпонентаBitBtnрастерско копче

Копчето BitBtn, за разлика од стандардното, може, покрај насловот (Наслов), да содржи слика одредена од својството Глиф. Има сет на стандардни BitBtn копчиња, со однапред дефинирани својства (со специфична слика, натпис и цел) - типот на стандардно копче се избира преку својството Љубезно. Вид=(bkCustom, bkAbort, bkОткажи, bkClose…)

Задача бр. 1

Создадете апликација која содржи две компоненти на слика и 4 копчиња на главната форма („Вчитај слика“, „Изгради геометриска фигура“, „Промени боја“, „Излез“) и ви овозможува:

а) вчитајте ја графичката слика избрана од корисникот во компонентата Image1, така што сликата ја зафаќа целата област на компонентата Image.

б) под компонентата Image1 прикажете го натписот „Ова е слика од датотека.

(за секое мерење на големината и положбата на компонентатаСлика1 натпис треба
сместени строго под компонентата).

в) нацртајте геометриска фигура внатре во компонентата Image2: пополнета елипса отсечка што ја поврзува средината на компонентата Image со средината на долната и десната страна на компонентата Image.

(за секоја промена во големината и положбата на компонентатаСлика2 фигурата мора да биде правилно конструирана, т.е. според спецификацијата во однос на компонентатаСлика2)

г) променете ја бојата на линијата на сликата нацртана во Image2 на барање на корисникот користејќи ја компонентата ColorDialog.

Задача бр. 2

Направете апликација која ви овозможува случајно да поставите неколку етикети (на пример, зборот „Ура!“) во компонентата Image. За да го имплементирате ова, користете го генератор на случаен број на случаен избор и функцијата Случаен.

Корисникот мора да ги внесе димензиите на компонентата Image, зборот прикажан на Сликата и бројот на зборови.

Задача бр.3

Креирајте апликација која ви овозможува да изберете име на геометриска форма од ListBox и да ја нацртате избраната форма во компонентата Image. Бојата на обликот е избрана од компонентата RadioGroup.

Задача бр.4

Поделете ја компонентата PaintBox1 на 4 еднакви делови, обојте го секој дел во различна боја, на пример: сина, жолта, зелена, црвена.

До секој агол на PaintBox1, запишете ги координатите на тој агол (во однос на потеклото на формата на која се наоѓа компонентата PaintBox1).

Задача бр.5

СО

изберете го типот на обликот што ќе се нацрта од компонентата Radiogroup1, бојата за полнење од компонентата Radiogroup2 и нацртајте ја избраната форма во компонентата Image.

Задача бр.6

Направете апликација која му овозможува на корисникот да ги постави димензиите на компонентата PaintBox1 (во пиксели).

Поделете ја компонентата PaintBox1 на 2 еднакви делови, внатре во секој дел нацртајте елипса, исполнета со бојата избрана од корисникот во ColorDialog.

Задача бр.7

СО Создадете апликација која ви овозможува:

изберете го името на геометриската форма од ListBox и нацртајте ја избраната форма во компонентата Image. Обликот треба да се пополни со бојата избрана од корисникот во компонентата ColorDialog ако е избрано Да во компонентата RadioGroup.

Задача бр.8

Направете апликација која му овозможува на корисникот да ги постави димензиите на компонентата PaintBox1 (во пиксели).

Поделете ја компонентата PaintBox1 на 4 еднакви делови, внатре во секој дел нацртајте различна геометриска форма (елипса, ромб, триаголник и правоаголник). Бојата на секоја форма ја избира корисникот во ColorGrid.

Задача бр.9

изберете го името на геометриската форма од ListBox
форми (елипса, ромб, правоаголник) и цртаат
избраната форма во компонентата Image. Локација
форми во компонентата Слика (I четвртина, II четвртина,

III или IV квартал) и се избира бојата на фигурата
од компонентите на RadioGroup.

Задача бр.10

Направете апликација која му овозможува на корисникот да ги постави димензиите на компонентата PaintBox1 (во пиксели).

Обезбедете дека големината на страната не може да биде текст, не може да биде негативен број и не може да ја надмине помалата големина на формата.

Поделете ја компонентата PaintBox1 на 4 еднакви делови, внатре во секој дел нацртајте геометриска форма избрана од корисникот во Combobox (елипса, ромб, триаголник и правоаголник). Бојата на фигурата ја избира корисникот во ColorBox.

Задача бр.11

Создадете апликација која ви овозможува:

изберете од компонентата Radiogroup позицијата на цртежот

во компонентата Image на правоаголен триаголник, поставете
бојата на засенчувањето на фигурата или бојата на контурите, во зависност од
овозможување на копчињата на полето за избор. Изберете боја преку
ColorGrid компонента.

Задача бр.12

Направете апликација која му овозможува на корисникот да ги постави димензиите на компонентата PaintBox1 (во пиксели).

Обезбедете дека големината на страната не може да биде текст, не може да биде негативен број и не може да ја надмине помалата големина на формата.

Поделете ја компонентата PaintBox1 на 2 еднакви делови, внатре во еден од деловите нацртајте геометриска форма избрана од корисникот во Combobox (елипса, ромб, триаголник и правоаголник). Бојата на фигурата ја избира корисникот во ColorBox.

На пример, можете да ја промените бојата на формуларот на следниов начин:

form1.Color:= ColorBox1.Colors;

Задача бр.13

Создадете апликација која ви овозможува:

а) нацртајте квадрат во средината на обликот (големината на страната на квадратот ја внесува корисникот). Обезбедете дека големината на страната не може да биде текст, не може да биде негативен број и не може да ја надмине помалата големина на формата.

б) поделете го квадратот на една или две дијагонала, во зависност од вклучувањето на копчињата за избор и обојте го секој добиен триаголник со различна боја. Изборот на боја го прави корисникот.

Задача бр.14

Направете апликација која му овозможува на корисникот да ги постави димензиите на компонентата PaintBox1 (во пиксели).

Обезбедете дека големината на страната не може да биде текст, не може да биде негативен број и не може да ја надмине помалата големина на формата.

Поделете ја компонентата PaintBox1 на 2 еднакви делови, внатре во едниот дел нацртајте ромб, а во другиот дел нацртајте кој било триаголник. Бојата на фигурата ја избира корисникот во ColorBox.

На пример, можете да ја промените бојата на формуларот на следниов начин:

form1.Color:= ColorBox1.Colors;

Задача бр.15

Создадете апликација која ви овозможува:

а) поставете ги димензиите на компонентата Image хоризонтално и вертикално да бидат исти и еднакви на бројот што го внесува корисникот од тастатурата;

(под услов големината на страната да не биде текст, да не биде негативен број и да не може да ја надмине помалата големина на формата)

б) поделете ја компонентата Image на 4 еднакви квадрати со две сини линии;

в) во секој добиен квадрат, нацртајте круг впишан во него (дозволете му на корисникот да ја избере бојата на круговите преку дијалог прозорецот за избор на боја).

Задача бр.16

Направете апликација која му овозможува на корисникот да ги постави димензиите на компонентата PaintBox1 (во пиксели).

Обезбедете дека големината на страната не може да биде текст, не може да биде негативен број и не може да ја надмине помалата големина на формата.

Поделете ја компонентата PaintBox1 на 9 еднакви делови и обојте го секој добиен правоаголник од шаховска табла. Бојата за полнење ја избира корисникот во ColorBox.

На пример, можете да ја промените бојата на формуларот на следниов начин:

form1.Color:= ColorBox1.Colors;

Задача бр.17

На формуларот, поставете две компоненти на сликата и четири копчиња: Боја на линијата, Боја за полнење, Ок и Излез; и компонентата Уреди.

Кога ќе кликнете на копчето ОК, квадрат со страната X е нацртан во Image1, а правоаголен триаголник со еднакви кати, од кои секоја има должина X, е нацртан во Image2.

Темето на триаголникот се совпаѓа со потеклото на Image2. Едно од темињата на квадратот се совпаѓа со потеклото на Image1.

Копчето OK станува достапно само кога сте избрале боја на линија и боја за полнење за да ја нацртате формата.

X – избира случајно, користејќи Случајни функцииа компонентата Уреди треба да ја прикаже вредноста на X.

Задача бр.18

Направете апликација која му овозможува на корисникот да ги постави димензиите на компонентата PaintBox1 (во пиксели).

Поделете ја компонентата PaintBox1 на 4 еднакви делови; внатре во делот избран од корисникот треба да се изгради пополнет круг, чија големина ја одредува корисникот. Корисникот ја избира бојата за полнење во ColorBox.

На пример, можете да ја промените бојата на формуларот на следниов начин:

form1.Color:= ColorBox1.Colors;

За прикажување на графички информации, библиотеката Делфи обезбедува компоненти, чиј список е даден во табела. 6.

Табела 6

Компоненти за прикажување на графички информации

Компонента Страница Опис
Слика Дополнителни Се користи за прикажување графика
PaintBox (прозорец за цртање) Систем Се користи за создавање област на формата во која можете да цртате
DrawGrid (табела со цртежи) Дополнителни Се користи за прикажување на нетекстуални податоци во редови и колони
Графикон (табели и графикони) Дополнителни Компонентата припаѓа на семејството на компоненти TeeChart, кои се користат за креирање графикони и графикони
Chartfx (табели и графикони) ActiveX Уредувач на графикони и графикони
FIBook (страници на Excel) ActiveX Компонента за внесување и обработка на нумерички информации
VtChart (табели) ActiveX Прозорец за дијаграмирање

Дополнително, можете да прикажете и внесете графички информации на површината на која било компонента на прозорецот што има својство Платно- платно.

Табели со слики - компоненти на DrawGrid и StringGrid

Компонента DrawGridсе користи за креирање табела во апликацијата која може да содржи графички слики. Оваа компонента е слична на компонентата StringGridбидејќи второто е изведено од DrawGrid.Затоа во DrawGridприсутни се сите својства, методи, настани на компонентата StringGridосвен оние поврзани со текстот, т.е. освен имотите Клетки, Колови, редови, објекти.Од оваа гледна точка, компонентата StringGridима значително поголеми способности од DrawGridбидејќи може да складира и слики и текстови во ќелии. И ако сакате да внесете текст во некои ќелии DrawGridтогаш за ова ќе треба да користите методи за прикажување текст на преглед, што не е многу погодно.

Компоненти DrawGrid и StringGridимаат преглед Платно,на кои можете да објавувате слики.

Постои метод Cell-Rect,кој ја враќа површината на платно доделена за дадена ќелија. Овој метод е дефиниран како

функција 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.Овие настани се случуваат за секоја клетка на табелата во моментот кога таа се прецртува. Заглавието на управувачот изгледа вака:

процедура TForml.DrawGridlDrawCell(Испраќач: TObject;

ACol, Arow: Цел број; Rect: TRect; Состојба: TGridDrawState)

Параметар државаукажува на состојбата на клетката. Тоа е збир што може да ги содржи следниве елементи: gdИзбрано- избрана ќелија, gdФокусирани- клетката што е во фокусот, gdПоправено- ќелија во фиксна област на табелата. Параметар државаможе да се користи за различно прикажување на ќелиите во различни состојби.

Компонента за обликување

Компонента за обликувањеможе само условно да се класифицира како средство за прикажување на графички информации, бидејќи едноставно претставува различни геометриски форми, соодветно засенчени. Главното својство на оваа компонента е Облик(форма), која може да ги земе следните вредности:

StRectangle – правоаголник;

StSquare – квадрат;

StRoundRect - правоаголник со заоблени агли;

StRouhdSquare - квадрат со заоблени агли;

StEllipse – елипса;

StCircle - круг.

Друго суштинско својство на компонентата е Четка(четка). Ова својство е објект од типот четка,има голем број на под-својства, особено боја (четка. Боја)и стил (Четка.Стил)пополнување на фигурата. Можете да го видите пополнувањето за некои вредности на стилот на сл. 3.2. Третото специфично својство на компонентата Облик- Пенкало(пенкало) што го дефинира стилот на линијата.

Компонента на графиконот

Сега да ја погледнеме компонентата Графикон.Оваа компонента ви овозможува да изградите различни графикони и графикони кои изгледаат многу импресивно. Компонента Графиконима многу својства, методи, настани, така што ако ги земеме предвид сите, ќе треба да посветиме цело поглавје на ова. Затоа, ќе се ограничиме на разгледување само на главните карактеристики Графикон.Остатокот можете да го најдете во вградената помош на Delphi или едноставно да ги испробате со експериментирање со дијаграмите.

Компонента Графиконе контејнер со предмети Серии- наследници на класот TChartSeries.Секој таков објект претставува серија податоци кои се карактеризираат со одреден стил на прикажување: одреден график или дијаграм. Секоја компонента Графиконможе да вклучува неколку епизоди. Ако сакате да прикажете график, тогаш секоја серија ќе одговара на една крива на графикот. Ако сакате да прикажувате графикони, за некои типови графикони можете да преклопите неколку различни серии една врз друга, за други (како табели со пити) веројатно ќе изгледа грдо. Сепак, дури и во овој случај, можете да поставите за една компонента Графиконнеколку серии на идентични податоци со различни типовидијаграми. Потоа, со тоа што еден од нив ќе биде активен во секое време, можете да му овозможите на корисникот избор од типот на графиконот што ги прикажува податоците за кои се заинтересирани.

Ставете една или две компоненти Графиконна формуларот и погледнете ги својствата што се отвораат во Инспекторот за објекти. Еве неколку објаснувања за некои од нив.

AllowPanning - ја одредува способноста на корисникот да го скролува набљудуваниот дел од графикот за време на извршувањето со притискање на десното копче на глувчето. Можни вредности: pmНишто - лизгањето е забрането, pmHori/ontal, pm Вертикално или pmBoth - лизгањето е дозволено, соодветно, само во хоризонтална насока, само во вертикална насока или во двете насоки.

AhowZoom - му овозможува на корисникот да го промени зумирањето на сликата за време на извршувањето со отсекување на делови од графиконот или графиконот со курсорот на глувчето. Ако рамката на фрагментот е нацртана надесно и надолу, тогаш овој фрагмент се протега за да го покрие целото поле на графикот. И ако рамката е нацртана и лево, тогаш оригиналната скала е вратена.

Наслов - го дефинира насловот на дијаграмот.

Нога - го дефинира натписот под дијаграмот. Никој стандардно. Текстот за потпис се одредува со потсвојството Текст.

Рамка - ја дефинира рамката околу дијаграмот.

До многу од наведените својства во Инспекторот на објекти има копчиња со елипсови кои ви дозволуваат да повикате една или друга страница од Уредувачот на графикони - прозорец со повеќе страници што ви овозможува да ги поставите сите својства на графиконите. Уредувачот на дијаграми може да се повика и со двоен клик на компонентата Графиконили со десен клик на неа и избирање на командата Edit Chart од менито што се појавува.

Кликнете двапати на горната компонента Графикон.Ќе бидете префрлени во прозорецот Уредувач на графикони на страницата Графикон, кој има неколку јазичиња. Прво на сите, ќе ве интересира табулаторот Серија на неа. Кликнете на копчето Додај - додајте серија. Ќе бидете однесени во прозорец каде што можете да го изберете типот на графиконот или графиконот. Во овој случај, изберете Пита - пита шема. Користејќи го табулаторот Наслови, можете да го поставите насловот на графиконот, табулаторот Легенда ви овозможува да поставите параметри за прикажување на легендата на графиконот (листа на симболи) или целосно да ја отстраните од екранот, табот Панел го одредува изгледот на панелот на на кој графиконот се прикажува, табулаторот 3D ви дава можност да го промените изгледот на вашиот графикон: навалување, поместување, дебелина итн.

Кога работите во Уредувач на графикони и сте избрале тип на графикон, компонентите ГрафиконВашиот образец го прикажува својот изглед со условните податоци внесени во него. Затоа, можете веднаш да го видите резултатот од примената на различни опции на вашата апликација, што е многу погодно.

Страницата Серија, која има и голем број јазичиња, ви дава можност да изберете дополнителни опции за прикажување на серијата. Конкретно, за дијаграмот со пити, на табулаторот Формат, корисно е да се овозможи опцијата заокружена пита, која ќе осигури дека графиконот се прикажува како круг во која било големина на компонентата на графиконот. На табулаторот Marks, копчињата од групата Style одредуваат што ќе пишува на етикетите поврзани со одделни сегменти на графиконот: Вредност - вредност, Процент - проценти, Етикета - имиња на податоци итн.

Можете, доколку сакате, да додадете друга идентична серија на оваа компонента на графиконот со кликнување на копчето Клон на картичката Серија на страницата Графикон, а потоа за ова нова серијаКликнете на копчето Промени и изберете друг тип на графикон, на пример Лента.

Излезете од уредувачот на графикони, изберете ја долната компонента на графиконот во вашата апликација и повторете ги поставувањата на нејзините својства користејќи го уредувачот на графикони. Во овој случај, ќе треба да наведете две серии ако сакате да прикажете две криви на графикот и изберете го типот Линиски графикон. Затоа што ние зборуваме заза графиконите, можете да ги користите табовите Оска и Ѕидови за да ги одредите координатните карактеристики на оските и тридимензионалните рабови на графикот.

Тоа е тоа за дизајн изгледапликацијата завршува. Останува само да го напишете кодот што ги одредува податоците што сакате да ги прикажете. За апликацијата за тестирање, да поставиме само неколку константни податоци во дијаграмот на пита и некои функции во графиконите.

За да ги поставите прикажаните вредности, мора да користите методи на серија. Да се ​​фокусираме само на три главни методи.

Метод Јаснобрише серија од претходно внесени податоци.

Метод Додај:

Додај (Const AValue:Double; Const ALabel:String; AColor:TCcolor)

ви овозможува да додадете нова точка на дијаграмот. Параметар AVвредностодговара на додадената вредност, параметар ALознака- етикета што ќе биде прикажана на дијаграмот и во легендата, AColor- боја. Параметар ALознака- опционално, може да се постави празно: „“. Метод AddXY:

AddXY (Const AXValue, AYValue: Double; Const ALabel: String; AColor: TColor)

ви овозможува да додадете нова точка на графикот на функции. Опции AXValueИ AYValueодговараат на аргументот и функцијата. Опции ALabel и AColorисто како и во методот Додадете.

Така, постапката за вчитување податоци во нашиот пример може да изгледа вака:

const Al=155; А2=251; А3=203; А4=404; var i: збор; започне

Започнете со серијата

Додај (Al"Работилница l", clYellow);

Додај (A2"Работилница 2", clBlue);

Додај(A3"Работилница 3",clRed);

Додај (A4"Работилница 4", clPurple); крај;

Series2.Clear; SeriesS.Clear; за i:=0 до 100 почнуваат

Series2.AddXY(0.02*Pi*i,sin(0.02*Pi*i)

SeriesS.AddXY(0.02*Pi*i,cos(0.02*Pi*i) крај;

ClRed); ,clBlue);

Оператори Јасносе потребни ако сакате да ги ажурирате податоците додека работи апликацијата.

Ова го завршува нашиот вовед во компонентата Графикон.Точно, разгледавме само мал дел од неговите можности.


„Прикажување графички информации во Делфи“ Тема: 1.C S pppp ooooo ssss ooooo bbbb yyyy во во yyyy vvvv ooooo дддд аааа yy г рррр аааа ффф иии хххх еееееееееееееееееееееееееееееееееееееееееееееееееееее рр р ммм ахх цскст иииии иииии во ив во Д Д Д Д еее лллл ппп хххх иии О О ттт ооо ббб рррр аааа жжж еее нннн ииии еее к к аааа рррр ттт иии ннннн оооо кктк оооооооо ооооо ооооо ооооооо n eeee eee g g y g eee ooooo mmmm eee ttt rrrr eeee hhchh eee ssss kkkk eeee xxxx ffff iii yyyy uuuu rrrrr P Pooooo ssss ttt rrrrr ooooo eee nnnn eeee eeee y yy g rrrrr aaaa ffff eeee kkkk oooo vvvv i and and and d d d d iiiiii aaaa yyyy rrrrr aaaa mmmm mmmm....


1. Методи за прикажување на графички информации. Во Делфи, постојат неколку начини за прикажување на графички информации: Излез на претходно подготвени слики (компоненти за слика, форма); P Изработка на графикони и дијаграми (компонента на графикон и сл.); F Формирање слики програмски (Canvas објект).


2.Прикажи 2.Прикажи слики. Приказот на сликите со помош на компонентата Image што ја испитавме во LLC DDDDD DDDD LLC Yiyy и и и ZZZZ P P P P P PRRRDDDDDDDDDDDD IIII XXXX T T T T T T T T T TOTEMMM .... Овде ќе разгледаме пример за имплементација наједноставна анимацијасо периодично менување на прикажаната слика во компонентите Image. PPPP EDURRRREEEE YYYE TTTT IIII n N N n AAAAAA PP PRRR IIII MMMMEEEE RRRRR ...






3.Приказ 3.Приказ на геометриски форми. И Од неколку компоненти на Shape можете да креирате едноставни цртежи. P Со програмско менување на положбата (.Лево,.Горно), големината (.Width,.Height) и бојата (Brush.Color) на компонентите Shape во цртежот, можете да имплементирате елементи од наједноставната анимација. Р Р Р аааа сссссс мммм оооо тттт ррррр еее тттт је п п п п ррррр ии мммм еее ррррр....


4.Конструкција 4.Изградба на графикони и дијаграми. Дијаграмите се дизајнирани за повизуелно прикажување на нумеричките низи на податоци, нивно визуелно прикажување и анализа. PPPP rrrrr iiii mmmm eee rrrrr.... За да креирате графикони во Delphi постојат неколку компоненти, една од нив е компонентата Chart (дел TeeChart Std).










Графикони и дијаграми. Податоците што треба да се прикажат обично се пренесуваат на графиконот програмски, на пример: Series1.Clear; (чиста серија) за i:=1 до N do Series1.addxy(i, A[i], clGreen); Вредност на X-оската Вредност на Y-оската Ознака на X-оската Боја на податоците на табелата ПП аааа сссссссссс ммм оооо tttt rrrrr eee tttt yee p p p p prrrr iiii mmmm eee rrrrr p p p poooo а ффф иии кккк аааа f f f f uuuu nnnn kkkk tsstst iiiiii y y y = = = = S S S S iiii nnnn ((((xxxx))))


Следно: Лабораториска работа „““ ОООО тттт оооо ббб рррр аааа жжж еее нннн иии еее к к к аааа рррр ттт иии нннн оооо кккк и и и јиј ееееееееееееееееееееееееееееееееееее iiii xxxx ffff iiii yyyy uuuu rrrrr, и и и xxxx a a a a a nnnn iiii mmmm aaaa tsstst iiii yayayaya """"...Задача: 1) Развијте апликација за изведување едноставна анимација со периодично менување на прикажаната слика во компонентите Image. (Бројот на слики е најмалку три, самите изберете ги сликите).




Следно: Лабораториска работа ““““ PPPP oooo ssss tttt rrrrr оооо еее nnnn iiii eee yy g rrrrr aaaa ffff iiii kkkk оооо вввв и и и и и d d d iiii аааа "Тттт мммм". апликацијата од лабораториска работа 9 (Прикажи податоци во табела). Додадете можност за прикажување на некои податоци од табела во хистограм или пита шема. 2) Конструирај график на дадената функција.

Библиотека со визуелни компоненти (VCL) Delphi ни ги обезбедува следните визуелни компоненти за прикажување графички информации: слика (слика), PaintBox (прозорец за цртање), DrawGrid (табела со слики), графикон (табели и графикони), анимирање (излезни видео клипови ), како и Форма. Овие компоненти имаат својство Canvas (дискутирано погоре) што дава пристап до секој пиксел. Се разбира, не мора да цртате пиксел по пиксел за да работите со графика во Делфи; системот Делфи обезбедува моќни алатки за работа со графика.

Ајде внимателно да ги разгледаме горенаведените компоненти:

Компонента за слика

Е објект од класата TImage. Се користи за прикажување на слики прочитани од графички датотеки. Стандардно, прикажува слики претставени во формат *.bmp на површината на формуларот. За да излезете слики во формат jpg, треба да го вклучите JPEG модулот во директивата за употреба. Се наоѓа во табот Дополнителни на Палетата на компоненти.

По поставувањето на компонентата Image на формуларот, таа добива форма на избрана правоаголна област.

Слика 9 - Компонента на слика на формуларот

За да отворите дијалог за избирање на саканата слика, мора да го направите следново со помош на Инспекторот за објекти. За да го направите ова, пронајдете го својството Picture и кликнете на трите точки лево од него. Се отвора прозорецот Уредувач на слики и во него изберете Вчитај; во прозорецот што се отвора изберете ја датотеката со слика.

Ова може да се направи и програмски со повикување на методот LoadFromFile од својството Picture:

Image1.Picture.LoadFromFile ("име_pic.jpeg");

каде name_pic.jpeg е името на датотеката.

Табела 8 - Основни својства на компонентата Image

Имотот

Опис

Сликата прикажана во полето за компонента

Димензии на компонентите. Ако овие димензии се помали од големината на илустрацијата, а својствата Stretch, AutoSize и Proportional се поставени на False, тогаш се прикажува дел од сликата

Ви овозможува автоматски да ги скалирате сликите без изобличување. За да се изврши скалирање, својството AutoSize мора да биде поставено на False

Ви овозможува автоматско скалирање (смалување или растегнување) на сликата за да одговара на големината на компонентата Слика. Ако големината на компонентата не е пропорционална со големината на сликата, тогаш сликата ќе биде искривена

Ви овозможува автоматски да ја менувате големината на компонентата за да одговара на големината на сликата

Ви овозможува да ја одредите хоризонталната положба на сликата во полето на компонентата Image ако ширината на сликата е помала од ширината на компонентата.

Површина за прикажување на графика

Одредува транспарентна боја на позадината на сликата

Пример 1: Напишете програма за прегледување слики користејќи ја компонентата Image. Програмата мора да ги има следните способности:

  • · гледајте слики во папката;
  • · прегледајте ја сликата во целосна големина или во формат најсоодветен за големината на прозорецот;
  • · управување со датотеки со слики, како и печатење, зачувување, бришење и уредување слики;
  • · доколку е потребно, отворете ја сликата во програма за уредување;

Слика 10 - Прозорец на програмата пред да започне

Креирање на проект:

  • 1. Направете папка за програмските датотеки и стартувајте ја интегрираната развојна околина на Delphi.
  • 2. Додадете компоненти во формуларот:

Прво, на формуларот ќе ја поставиме компонентата Image, главната компонента со која ќе треба да работиме. Покрај ова, ќе ни требаат следниве компоненти:

  • · ScrollBox Неопходно е кога е во режим со целосна големина сликата ќе оди подалеку од Сликата. Ние ја доделуваме вредноста alClient на неговото својство Aling така што неговите димензии се менуваат пропорционално со големината на прозорецот. И ставете ја компонентата Image на неа;
  • · Ќе додадеме и компоненти за дијалог SavePictureDialog и OpenPictureDialog, дизајнирани за зачувување и отворање слики. Ни треба првиот да ја копира сликата во избраниот директориум, вториот - да го повика дијалогот за отворање графичка датотека. Тие се наоѓаат на страницата Дијалози на Палетата на компоненти. Од оваа страница ни треба и компонентата PrintDialog, која треба да ја повикаме на дијалогот за избор на печатач за печатење.
  • · Додајте MainMenu за да додадете главно мени на програмата и XPManifest за пошарен дизајн
  • · Исто така, треба некаде да ги зачуваме имињата на сликите лоцирани во работниот директориум. Компонентата ListBox е погодна за овие цели, може да биде скриена при обработка на настанот Креирај од Form1.
  • · За да поставиме копчиња за навигација и практично да работиме со нив, ќе додадеме панел Veil, на кој ќе ги поставиме овие копчиња (Претходна слика, Следна слика, Вистинска големина, Прилагоди на големината, Избриши, Копирај во, Печати, Уреди). SpeedButton е избрано како компонента за нив.
  • · Додајте тајмер за фаќање на тастатурата „Лево“ (претходна слика), „Десно“ (следна слика) и копчето „Дел“ (слика се брише).
  • · И уште една компонента - ProgressBar, која го прикажува процесот на вчитување големи *.Jpg датотеки.
  • 3. Напишете код за обработка на настанот со кликнување на копчето (Претходна слика, Следна слика, Вистинска големина, Прилагоди на големината, Избриши, Копирај во, Печати, Измени). Напишете код за обработка на настанот со кликнување на ставките од менито на Главното мени (Излез, Отвори, Затвори, Креирај).
  • 4. Поставете ги почетните поставки за креирање на формуларот. Двоен клик на слободен просторформирајте и напишете ја процедурата за код за процедурата TForm1.FormCreate(Sender:TObject), видете го кодот на модулот во Додаток 1.
  • 5. Напиши постапки од следниот тип:

процедура FindFileInFolder(патека, ext: стринг);

Оваа постапка ја скенира папката патека за датотеки користејќи ја маската ext.

Целосниот список на кодот на програмскиот модул се наоѓа во Додаток 1 (Список на програми 3).

  • 1. Наведете ги можностите на компонентата Image.
  • 2. Од која класа е објект компонентата Image?
  • 3. 3. Каков тип на датотека стандардно поддржува компонентата Image?
  • 4. 4. Наведете ги главните својства на компонентата Image.
  • 5. 5. Кое својство ја складира сликата на компонентата Image?

Опис на презентацијата по поединечни слајдови:

1 слајд

Опис на слајдот:

2 слајд

Опис на слајдот:

Визуелна средина Делфи програмирање, како и Windows, поддржува GUIкорисник (GDI – Графички делфи интерфејс). Во Делфи, постојат два начини за прикажување на графички информации: прикажување на претходно подготвени слики; цртање од програмата.

3 слајд

Опис на слајдот:

Првиот метод се заснова на употребата на компонентите Image и Shape. Можете да користите готова слика (икона) или сами да ја креирате користејќи го Уредувачот на слики. Вториот начин е да генерирате слики програмски користејќи го објектот Canvas.

4 слајд

Опис на слајдот:

Делфи има на располагање посебен објект, кој е стилизиран како својство на Canvas. Достапно е само додека апликацијата работи, така што може да се контролира од програмата само со пишување потребна шифраво јазикот Object Pascal. Ако некој објект има својство Canvas, можете да цртате на неговата површина. Најпогодни кандидати за оваа улога се самата форма и специјалната компонента PaintBox.

5 слајд

Опис на слајдот:

Платно објект Својства: Пенкало – својство за цртање линии и граници на геометриски форми. Пенкалото ги следи наредбите на графичкиот курсор и, пак, има свои вгнездени својства: Боја – ја одредува бојата на линијата (црна по дифолт); Режим – стил на цртање (има многу значења што не се дадени овде); Style – стил на линија, кој може да ги има следните вредности: рsSolid – солидна (стандардно); рsDosh – испрекинат; psDot – точки; рsDoshDot – линија со точки (и други својства); Widh – дебелина на линијата (стандардно 1 пиксел);

6 слајд

Опис на слајдот:

Четка – својство за пополнување облици со следните вгнездени својства: Боја – боја на четка (по дифолт бела); Стил – шема на четка, која може да ги има следните вредности: bsClear – цврста боја; бХоризонтални – хоризонтални линии; бВертикални – вертикални линии; bsFDiagonal – леви дијагонални линии; bsBDiagonal – десни дијагонални линии; bsCross – ќелија; bsDiagCross – коси ќелија;

7 слајд

Опис на слајдот:

Фонт – својство за прикажување на текст кој ги има следните вгнездени својства: Боја – боја на знаци; Висина – висина на фонтот во пиксели; Име – име на фонт; Големина – големина на фонтот; Стил – стил на фонт, кој може да ги земе следните вредности: fsBold – задебелен; fsИталик – курзив; fsПотвлече – подвлечено; fsStrikeOut – пречкртано;

8 слајд

Опис на слајдот:

PenPos (Позиција на пенкало) – својство за зачувување на моменталната позиција на цртање (ја дефинира позицијата на пенкалото во областа за цртање во овој моментвреме); Пиксели - својство на низа за пишување и читање на координатите на поединечните точки на областа за цртање („платно“).

Слајд 9

Опис на слајдот:

Методи на објектот Canvas MoveTo(x,y: цел број) – го поместува пенкалото од моменталната позиција до точка со наведените x, y координати без цртање линија; LineTo(x.y: цел број) - го поместува пенкалото од моменталната позиција до точка со дадените координати x, y, цртајќи права; Arc(x1, y1, x2, y2, x3, y3, x4, y4: цел број) – црта лак на елипса впишана во правоаголник со координати (x1, y1) и (x2, y2). Лакот се одредува со радиусите на елипсата што минува низ точките (x3,y3) и (x4,y4);

10 слајд

Опис на слајдот:

Акорд(x1, y1, x2, y2, x3, y3, x4, y4: цел број) – црта акорд на елипса според описот даден за методот Arc; Елипса(x1, y1, x2, y2: цел број) – црта елипса впишана во правоаголник со горниот лев агол во точката (x1, y1) и долниот десен агол во точката (x2, y2); FillRect(Rect (x1, y1, x2, y2: цел број)) – го пополнува правоаголникот со бојата наведена во тековната четка. Ја користи функцијата Rect, која претставува правоаголник на дадените координати;

11 слајд

Опис на слајдот:

FloodFill(x,y: цел број; Боја: TColor; FillStyle: TFillStyle) – пополнување со моменталната боја наведена во својството Brush: со FillStyle=fsBorder – затворена област од точката со координати x, y до границата дефинирана со Color ; со FillStyle=fsSurface – тој дел од површината што ја има бојата Боја; Pie(x1, y1, x2, y2, x3, y3, x4, y4: цел број) – црта сектор на елипса впишан во правоаголник со координати (x1, y1) и (x2, y2). Секторот е дефиниран со два елипсови радиуси кои минуваат низ точките (x3, y3) и (x4, y4);

12 слајд

Опис на слајдот:

Polyline (Points: array of TPoint) – црта полилинија, секвенцијално поврзувајќи ги точките од низата Points; Многуаголник (точки: низа од TPoint) – црта многуаголници со секвенцијално поврзување на точките во низата Points. Се разликува од методот Polyline по тоа што автоматски го поврзува крајот на полилинијата со неговиот почеток; Правоаголник (x1, y1, x2, y2: цел број) – црта правоаголник со горниот лев агол во точката (x1, y1) и долниот десен агол во точката (x2, y2);

Слајд 13

Опис на слајдот:

Retresh – методот се повикува кога е неопходно повторно да се нацрта сликата; RoundRect (x1, y1, x2, y2, x3, y3: цел број) – црта правоаголник со заоблени агли. Аглите се нацртани како четвртини од елипса со ширина x3 и висина y3; TextOut (x, y:цел број, Text:String) – го прикажува текстот наведен во параметарот Text. Текстот се вклопува во правоаголник чиј горен лев агол има x, y координати.




Врв