Оқулық Қазақстан Республикасы Білім жəне ғылым министрлігі бекіткен Алматы, 2011 1



бет117/210
Дата06.01.2022
өлшемі4,42 Mb.
#16437
түріОқулық
1   ...   113   114   115   116   117   118   119   120   ...   210
Procedure SetAllPalette (var Palette);
Palette параметрі процедура тақырыбында типтік емес па-раметр ретінде сипатталған. Бұл параметрдің бірінші байтында N палитра ұзындығы, қалған N байттар – (–1) мен MaxColors аралығындағы жаңадан орнатылатын түстер нөмірі. (–1) коды бастапқы палитраның сəйкес түсі өзгермейтіндігін білдіреді.
Келесі программада палитраның барлық түстері бір мезгілде өзгереді.
uses Graph, CRT;
var
Palette: array [0..MaxColors] of Shortint;
d,r,e,k: Integer;
begin
{Графиканы іске қосамыз} d:=Detect; InitGraph(d,r,''); e:=GraphResult;
if e <> grOk then WriteLn(GraphErrorMsg(e))


203

else
begin
{Қалың, біркелкі сызықтарды таңдаймыз} SetLineStyle(SolidLn, 0, ThickWidth);
{Сызықтарды қол жеткізуге болатын барлық түстермен шығарамыз}
for k:=1 to GetMaxColor do begin
SetColor(k);
Line(GetMaxX div 3,k*10,2*GetMaxX div 3,k*10)
end;
Palette[0]:=MaxColors; {Палитра көлемі} repeat {Палитраны ауыстыру цикл}
for k:=1 to MaxColors do Palette[k]:=Random(succ(MaxCoLors));
SetAllPalette(Palette)
until KeyPressed;
if ReadKey=#0 then k:=ord(ReadKey); CloseGraph
end
end.
GetPaletteSize функциясы палитра көлемі (қол жеткізуге бо-латын түстердің максимальді саны) жаылған Integer типті мəнді қайтарады. Тақырыбы:


Достарыңызбен бөлісу:
1   ...   113   114   115   116   117   118   119   120   ...   210




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет