Delphi визуалды программалау ортасы



жүктеу 1,5 Mb.
бет91/94
Дата03.02.2022
өлшемі1,5 Mb.
#35447
1   ...   86   87   88   89   90   91   92   93   94
Delphi визуалды программалау жүйесі

52-сурет
2. Төменде келтірілген бағдарламаны пайдаланып, сол компоненттердің оқиғалары мен қасиеттерін өңдеп, жұмыс мақсатына жеткізетін әрекеттерді орындаңыз.
Бағдарламасы:

{ Бағдарлама тек басып шығаруды ғана орындайды. }

unit malymet_;

{$R *.dfm}

uses Printers;

procedure TForm1.FormCreate(Sender: TObject);

var

i: integer;



begin

with StringGrid1 do

begin

Cells[0,0] := ' №';



Cells[1,0] := ' Аты-жөні';

Cells[2,0] := ' Білімі';

Cells[3,0] := ' Санаты';

Cells[4,0] := ' Өтілі';

for i:=1 to 10 do

Cells[0,i] := ' '+IntToStr(i);

end;

end;
// Басып шығару батырмасында шерту



procedure TForm1.Button2Click(Sender: TObject);

const


LEFT_MARGIN = 2; // сол жақтан шегініс 2 см

TOP_MARGIN = 2; // жоғарыдан шегініс 2 см

var

dpiX, dpiY : integer; // Принтердің X және Y бойынша шығару //мүмкіндігі



kx,ky: real; // экран координатын принтердің Х және Y бойынша //координатына айналдыру коэффициенті

// кесте


p: array[0..4] of integer; // бағандар орны

x1,y1,x2,y2: integer; // кестенің шекаралары

px,py: integer; // шығу нүктесінің көрсеткіші

i,j: integer;

begin

{ Экран мен принтердің шығару мүмкіндіктері әр түрлі, енді олардағы кескін өлшемдерін сәйкестеу үшін экран нүктелерінің координатын принтер координатына түрлендіретін коэффициентке көбейту керек. Ол принтердің мүмкіндігіне байланысты. Мыс, принтердің шығаруы 300 dpi болса, онда экрандікі -96 dpi, сонда коэффициент 300/96=3.125-ке тең.}



// GetDeviceCaps функциясы құрылымдар сипаттамасын алуға //мүмкіндік береді

// LOGPIXELSX -X бойынша дюймге келетін пикселдер саны

dpiX := GetDeviceCaps(Printer.handle,LOGPIXELSX);

dpiY := GetDeviceCaps(Printer.handle,LOGPIXELSY);

kx := dpiX / Screen.PixelsPerInch;

ky := dpiY / Screen.PixelsPerInch;

px := Round(LEFT_MARGIN / 2.54 * dpiX);

py := Round(TOP_MARGIN / 2.54 * dpiY);

// кесте бағандарының «принтерлік» координаттарын есептеу

p[0] := px;

for i:=1 to 4 do

begin


p[i] := p[i-1] + Round(StringGrid1.ColWidths[i-1]* kx);

end;


with Printer do

begin


BeginDoc; // басып шығаруды ашу

// кестенің тақырыбы

Canvas.Font.Name := Edit1.Font.Name;

Canvas.Font.Size := Edit1.Font.Size;

Canvas.TextOut(px,py,Edit1.Text);

// StringGrid1кестенің құрамы

py := py+ Round(Edit1.Font.Size * 2 * ky);

x1 := px; y1 := py; // кестенің сол жақ жоғарғы бұрышы

Canvas.Font.Name := StringGrid1.Font.Name;

Canvas.Font.Size := StringGrid1.Font.Size;

x2 := p[4] + Round(StringGrid1.ColWidths[4]* kx);

y2 := py +

Round(StringGrid1.RowCount * StringGrid1.RowHeights[1] * ky);

for j:=0 to StringGrid1.RowCount do

begin

// кестенің жолдары



for i:=0 to StringGrid1.ColCount do

begin


Canvas.TextOut(P[i],py,StringGrid1.Cells[i,j]);

// көлденең сызық

Canvas.MoveTo(p[0],py);

Canvas.LineTo(x2,py);

end;

py:=py+ Round(StringGrid1.RowHeights[j]* ky);



end;

// тік сызық

for i:=0 to StringGrid1.ColCount -1 do

begin


Canvas.MoveTo(p[i],y1);

Canvas.LineTo(p[i],y2);

end;

Canvas.MoveTo(x2,y1);



Canvas.LineTo(x2,y2);

EndDoc; // басып шығаруды жабу

end; end; end.

.

28. Тир


Жұмыстың мақсаты – біршама ойнауға, өзіңнің шалт қимылыңды көрсетуге арналған тир ойынының бағдарламасын құру.

1. Ол үшін жаңа жоба ашып, сол Пішінге қажетті компоненттерді орналастырыңыз.

2. Төменде келтірілген бағдарламаны пайдаланып, сол компоненттердің оқиғалары мен қасиеттерін өңдеп, жұмыс мақсатына жеткізетін әрекеттерді орындаңыз.




жүктеу 1,5 Mb.

Достарыңызбен бөлісу:
1   ...   86   87   88   89   90   91   92   93   94




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

    Басты бет
рсетілетін қызмет
халықаралық қаржы
Астана халықаралық
қызмет регламенті
бекіту туралы
туралы ережені
орталығы туралы
субсидиялау мемлекеттік
кеңес туралы
ніндегі кеңес
орталығын басқару
қаржы орталығын
қаржы орталығы
құрамын бекіту
неркәсіптік кешен
міндетті құпия
болуына ерікті
тексерілу мемлекеттік
медициналық тексерілу
құпия медициналық
ерікті анонимді
Бастауыш тәлім
қатысуға жолдамалар
қызметшілері арасындағы
академиялық демалыс
алушыларға академиялық
білім алушыларға
ұйымдарында білім
туралы хабарландыру
конкурс туралы
мемлекеттік қызметшілері
мемлекеттік әкімшілік
органдардың мемлекеттік
мемлекеттік органдардың
барлық мемлекеттік
арналған барлық
орналасуға арналған
лауазымына орналасуға
әкімшілік лауазымына
инфекцияның болуына
жәрдемдесудің белсенді
шараларына қатысуға
саласындағы дайындаушы
ленген қосылған
шегінде бюджетке
салығы шегінде
есептелген қосылған
ұйымдарға есептелген
дайындаушы ұйымдарға
кешен саласындағы
сомасын субсидиялау