Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Else begin

Читайте также:
  1. Як і для чого використовують операторні дужки Begin/End в OpenGL?

StringGrid1.Cells[m, f]:= '<';

if j = 3 then StaticText1.Visible:= True;

if j = 2 then StaticText5.Visible:= True;

if j = 1 then StaticText9.Visible:= True;

end;

inc(f);

if a[2, j] >= p[2, j] then

StringGrid1.Cells[m, f]:= '>='

Else begin

StringGrid1.Cells[m, f]:= '<';

if j = 3 then StaticText2.Visible:= True;

if j = 2 then StaticText6.Visible:= True;

if j = 1 then StaticText10.Visible:= True;

end;

inc(f);

if a[3, j] >= p[3, j] then

StringGrid1.Cells[m, f]:= '>='

Else begin

StringGrid1.Cells[m, f]:= '<';

if j = 3 then StaticText3.Visible:= True;

if j = 2 then StaticText7.Visible:= True;

if j = 1 then StaticText11.Visible:= True;

end;

inc(f);

if a[4, j] <= p[4, j] then

StringGrid1.Cells[m, f]:= '<='

Else begin

StringGrid1.Cells[m, f]:= '>';

if j = 3 then StaticText4.Visible:= True;

if j = 2 then StaticText8.Visible:= True;

if j = 1 then StaticText12.Visible:= True;

end;

end;

end;

{**** Форматирование таблицы #1 ****}

procedure TForm5.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;

Rect: TRect; State: TGridDrawState);

Var

s: String;

Flag: Cardinal;

H: Integer;

i, j, m, n: Byte;

Begin

{_________________Выделение цветом ячеек (от вида отч. периода)________________}

i:= 0; // столбик

for m:= 1 to 3 do // для того, чтобы заполнить 3 раза (т.е. 3мя разными оттенками - зелёным, синим и красным)

Begin

if m = 1 then

Begin

if (ACol = i) and (ARow = 1) then // выделяем 1ую строчку

StringGrid1.Canvas.Brush.Color:= rgb(0, 205, 0); // тёмно-зелёный

for n:= 0 to 1 do // нужно закрасить два столбика

Begin

if n = 0 then i:= 0;

if n = 1 then i:= 3;

for j:= 2 to 5 do // от 2 до 5 строчку

if (ACol = i) and (ARow = j) then

StringGrid1.Canvas.Brush.Color:= rgb(154, 255, 154); // салатовый

end;

end;

i:= 0; // столбик

if m = 2 then

Begin

if (ACol = i) and (ARow = 6) then // выделяем 6ую строчку

StringGrid1.Canvas.Brush.Color:= rgb(67, 110, 238); // тёмно-синий

for n:= 0 to 1 do // нужно закрасить два столбика

Begin

if n = 0 then i:= 0;

if n = 1 then i:= 3;

for j:= 7 to 10 do // от 7 до 10 строчку

if (ACol = i) and (ARow = j) then

StringGrid1.Canvas.Brush.Color:= rgb(135, 206, 235); // голубой

end;

end;

i:= 0; // столбик

if m = 3 then

Begin

if (ACol = i) and (ARow = 11) then // выделяем 11ую строчку

StringGrid1.Canvas.Brush.Color:= rgb(238, 44, 44); // тёмно-красный

for n:= 0 to 1 do // нужно закрасить два столбика

Begin

if n = 0 then i:= 0;

if n = 1 then i:= 3;

for j:= 12 to 15 do // от 12 до 15 строчку

if (ACol = i) and (ARow = j) then

StringGrid1.Canvas.Brush.Color:= rgb(250, 128, 114); // розовый

end;

end;

StringGrid1.Canvas.FillRect(Rect);

StringGrid1.Canvas.TextRect(Rect, Rect.Left + 2, Rect.Top + 2, StringGrid1.Cells[ACol, ARow]);

end;

{________________________________________Выравнивание ячеек____________________}

StringGrid1.Canvas.FillRect(Rect);

s:= StringGrid1.Cells[ACol, ARow];

Flag:= DT_LEFT;

Flag:= Flag or DT_WORDBREAK;

Inc(Rect.Left, 0);

Dec(Rect.Right, 0);

H:= DrawText(StringGrid1.Canvas.Handle, PChar(s), Length(s), Rect, Flag);

if H > StringGrid1.RowHeights[ARow] then

StringGrid1.RowHeights[ARow]:= H; // Увеличиваем

{_________________Выделение цветом ячеек (знак)________________________________}

i:= 2; // столбик

// на аналогич. период

for j:= 2 to 4 do

if StringGrid1.Cells[i, j] = '<' then

if (ACol = i) and (ARow = j) then

StringGrid1.Canvas.Brush.Color:= rgb(238, 44, 44); // тёмно-красный

if StringGrid1.Cells[i, 5] = '>' then

if (ACol = i) and (ARow = j) then

StringGrid1.Canvas.Brush.Color:= rgb(238, 44, 44); // тёмно-красный

// на начало периода

for j:= 7 to 9 do

if StringGrid1.Cells[i, j] = '<' then

if (ACol = i) and (ARow = j) then

StringGrid1.Canvas.Brush.Color:= rgb(238, 44, 44); // тёмно-красный

if StringGrid1.Cells[i, 10] = '>' then

if (ACol = i) and (ARow = j) then

StringGrid1.Canvas.Brush.Color:= rgb(238, 44, 44); // тёмно-красный

// на конец периода

for j:= 12 to 14 do

if StringGrid1.Cells[i, j] = '<' then

if (ACol = i) and (ARow = j) then

StringGrid1.Canvas.Brush.Color:= rgb(238, 44, 44); // тёмно-красный

if StringGrid1.Cells[i, 15] = '>' then

if (ACol = i) and (ARow = j) then

StringGrid1.Canvas.Brush.Color:= rgb(238, 44, 44); // тёмно-красный

StringGrid1.Canvas.FillRect(Rect);

StringGrid1.Canvas.TextRect(Rect, Rect.Left + 2, Rect.Top + 2, StringGrid1.Cells[ACol, ARow]);

end;

{**** Панель - Печать ****}

procedure TForm5.Action1Execute(Sender: TObject);

Begin

PrintGrid(StringGrid1, lbCaption);

end;

{**** Панель - Помощь ****}

procedure TForm5.Action2Execute(Sender: TObject);

Begin

ShellExecute(handle, 'open', 'helpfile.pdf', nil, nil, SW_SHOWNORMAL);

end;

{****Панель - О программе ****}

procedure TForm5.Action3Execute(Sender: TObject);

Begin

Form22.Show;

end;

end.

 

2.2.2 UNIT TABL_2

unit Tabl_2;


Дата добавления: 2015-10-13; просмотров: 60 | Нарушение авторских прав


Читайте в этой же книге: Implementation | Interface | Interface | Interface | Implementation 1 страница | Implementation 2 страница | Implementation 3 страница | Interface | Interface |
<== предыдущая страница | следующая страница ==>
Implementation 4 страница| Interface

mybiblioteka.su - 2015-2024 год. (0.013 сек.)