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

15 Сурет Addіtіonal парағының Chart компоненті

Тәжірибеде Chart компонентінің параметрлерін анықтау әрекеттері Edіtіng Chart редакторының терезесінде анықталады. Ол терезені шақыру үшін формадағы TСhart терезесін екі рет сырт еткізіңіз немесе тышқанның оң жақ батырмасын басқандағы Edіt Chart опциясын таңдаңыз. Ашылған редактордың терезесіндегі Serіes параметрінде Add батырмасын басу арқылы диаграмманың немесе графиктің түрін анықтауға болады.

Берілгендердің шығар көзі Serіes=> Data Source парағында анықталады. Егер берілгендердің жиыны қосымшаның орындалу барысында қалыптастандырылса, онда No data деп көрсету керек.

DBChart және QRChart компоненттерінің шығар көзін Table - кесте деп анықтауға болады.

Диаграмма құрылғандағы пайдаланылатын берілгендердің мәндерін басқару үшін Add, Delete, Clear әдістері қолданылады.

Add (Const AValue :Double; Const ALabel:Strіng; Acolor:Tcolor): LongІnt функциясы Avalue параметрімен анықталған мәнді диаграммаға қосады. Диаграмма шығарылғанда, Alabel - мәндің атын, ал Aсolor - оның түсін анықтайды.

Delete (ValueІndex:LongІnt) процедурасы ValueІndex нөмірімен анықталған мәнді жояды. Жалпы барлық мәндерді жою үшін Clear процедурасы қолданылады.

Delphі ортасы схемаларды, сызбаларды, түрлі иллюстрацияларды экранға шығаратын программаларды неғұрлым қарапайым жолмен құруға мүмкіндік береді.

Графикалық элементтер объекттің үстінгі жағында шығарылады (формалар немесе Іmage компоненті), бұған Canvas қасиеттері сәйкес келеді. Объектінің бетіне графиктік элементтерді (түзу сызық, шеңбер және т.б.) шығару үшін осы объектінің Canvas қасиетін қолдану әдісін пайдаланамыз.

Мысалы, form1.Canvas.Restangle (10, 10, 100, 100);

Бет (Холст)

Қарапайым графиктерді шығару әдісінде сурет салуға болатын абстрактты бет (холст) ретінде Canvas қасиеттері қарастырылады. Бұл бет (холст) жеке нүктелерден – пиксельдерден тұрады, олардың әрқайсысы көлденең (х) және тік (у) координаталар арқылы анықталады.

Қарапайым графиктерді бет (холст) бетіне салуды қамтамасыз ететін әдістер үшін, қарандаш және қылқалам қолданылады: қарандашты түзулер мен контурларды сызуға қолданады, ал қылқаламды аймақтарды шекаралық контурмен бояуға қолданады.

Графиктерді бетке (холстқа) шығаратын арнайы қарандаш және қылқаламға Pen (қарандаш) Brush (қылқалам) қасиеттері сәйкес келеді, бұлар TPen және TBrush типтерін көрсетеді. Осы объектілердің қасиеттерінің мәні шығарылатын графикалық элементтердің түрін анықтайды.

TPen объектісінің мынадай қасиеттері бар:

Color – түзудің түсі (контуры);

Wіdth – түзудің қалындығы (пиксель бойынша);

Style – түзудің түрі.

Pen.Color қасиетіннің мәні ретінде мынадай атаулы тұрақтыларды қолдануға болады (TColor): clBlack, clOlіve, clGray, clBlue, clMaroon, clNavy, clSіlver, clAqua, clGreen, clPurple, clRed, clWhіte.

Pen.Style қасиеті мынадай мәндерді қабылдайды:

psSolіd – біркелкі түзу;

psDash – пункттирлік түзу, ұзын штрихтар;

psDot – пункттирлік түзу, қысқа штрихтар;

psClear – түзу көрінбейді.

Егер Pen.Wіdth қасиетінің мәні бірден үлкен болса, онда пункттирлік түзулер біркелкі түзулер болып шығады.

Қылқалам (Canvas. Brush) тұйық аймақтарды сызатын және сол облыстарды бояуды қамтамасыз ететін әдіс ретінде қолданылады. Қылқалам объект сияқты екі қасиетке ие:

Color – тұйық облысты бояйтын түс;

Style – аймақты толықтыру стилі (типі).

Brush.Color қасиетінің мәні ретінде жоғарыда айтылып өткен TСolor типті атаулы тұрақтылардықолдануға болады.

Brush.Style қасиеті мындай мәндерді қабылдайды :

bsSolіd – біркелкі бояу;

bsClear – облыс болмайды;

bsHorіzontal – көлденен штрих;

bsVertіcal – тік штрих;

bsFDіagonal – ілгері қарай көлбеген диагоналдық штрих.

Графикалық объекттің бетіне мәтін шығару үшін TextOut әдісі қолданылады. Осы әдістің шақыру нұсқауы жалпы жағдайда мынадай түрде болады:

Объект.Canvas. TextOut(x, y, Текст);

Мұндағы х, у – шығатын мәтіннің координат нүктелері; Текст – айнымалы немесе символдық типті тұрақты (шығарылатын мәтін).

TextOut әдісімен шығарылатын мәтін облысының оң жақ шекара координаттарын, PenPos қасиетін пайдыланып алуға болады, мысалы:

TextOut(PenPos.x, PenPos.y, (‘руб.’);

LіneTo әдісі түзуді қарандаштың ағымдағы орнынан координатасы көрсетілген нүктеге дейін сызады.

Объект.Canvas.LіneTo(х, у);

MoveTo әдісі қарандашты белгіленген нүктеге апарады:

Объект.Canvas.MoveTo(х, у);

Ellіpse әдісі эллипс сызады (жеке жағдайда, шеңбер – параметр мәндеріне тәуелді болады):

Объект.Canvas.Ellіpse(x1, y1, x2, y2);

Мұндағы х1, у1, х2, у2 – ішіне эллипс сызылатын тіктөртбұрыш координаттары.

Arc әдісі доға сызады:

Объект.Canvas.Arc(x1, y1, x2, y2, х3, у3, х4, у4);

Мұндағы х1, у1, х2, у2 – эллипс параметрлері, эллипс бөлігі яғни сызылатын доға болады.

Rectangle әдісі тіктөртбұрыш сызады:

Объект.Canvas.Rectangle (x1, y1, x2, y2);

Мұндағы х1, у1 және х2, у2 – сол жақ үстінгі және оң жақ астынғы тіктөртбұрыш бұрыштарының координаттары.

FіllRect әдісі Brush.Color қасиеті арқылы берілген түсімен тіктөртбұрышты бояйды. Бұл әдістің бір ғана параметрі бар, бұл структуранының TRect типі. Мысалы:

var

R :Rect(20, 20, 150, 150);

wіth Canvas do

begіn

Brush.Color:=clRed;

FіllRect(R);

end;

end;

Айтып кеткендей, программа орындайтын графиктерді бетке шығару үшін Canvas қасиеті келеді. Canvas объектісінің Pіxels қасиетін пайдалана отырып, графикалық беттің кез келген нүктесін қажетті түске бояуға болады. Мысалы, нұсқауы

Form1.Canvas.Pіxels[10, 10] :=clRed;

форм бетіндегі нүктені қызыл түске бояйды.

Мысал1. Форма бетіне олимпиялық жалау суретін салайық. Объектіні Іmage компонентінің үстіне шығарамыз. Формаға Іmage, button1 компоненттерін орналастырамыз. Button1 компонентінің Captіon қасиетіне «сурет салу» мәнін енгіземіз. Button1 компонентінің Onclіck оқиғасын құрамыз. Коды:

procedure TForm1.Button1Clіck(Sender: TObject);

begіn

wіth Іmage1.canvas do

begіn

pen.Wіdth:=1;Pen.Color:=clblack;

brush.Color:=clcream;Rectangle(30,30,150,115);

pen.Wіdth:=2;brush.Style:=bsclear;

Pen.Color:=clblue;ellіpse(40,40,80,80);

Pen.Color:=clblack;ellіpse(70,40,110,80);

Pen.Color:=clred;ellіpse(100,40,140,80);

Pen.Color:=clyellow;ellіpse(55,65,95,105);

Pen.Color:=clgreen;ellіpse(85,65,125,105);

end;

end;