Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Режим №2. Выведена в ремонт ВЛ 220 кВ «Агломерат 1»



 

    Для перевода электроустановки в режим №2 и, обратно, в нормальный режим работы, пользователь должен выполнить операции согласно последовательности, указанной в таблице 3.

Таблица 3

Порядок перехода с режима №1 на режим №2 Порядок перехода с режима №2 на режим №1
1 Вывести АВР 1, 2 Включить ОД3 220 кВ Т3
2 Включить СМВ1 яч.9 Включить ВВ 220 кВ яч 12
3 Отключить МВ ввода В1 яч. 5 Включить ШР1 яч 5
4 Отключить ТР1 яч. 5 Включить ТР1 яч 5
5 Отключить ШР1 яч. 5 Включить МВ ввода В1 яч 5
6 Вывести АВР 3, 4 Отключить СМВ1 яч.9
7 Включить СМВ2 яч.20 Ввести АВР 1, 2
8 Отключить МВ ввода В3 яч. 25 Включить ШР3 яч 25
9 Отключить ТР3 яч. 25 Включить ТР3 яч 25
10 Отключить ШР3 яч. 25 Включить МВ ввода В3 яч 25
11 Отключить ВВ 220 кВ яч 12 Отключить СМВ2 яч.20
12 Отключить ОД 220 кВ Т3 Ввести АВР 3, 4

 

    Состояние коммутационных аппаратов должно соответствовать схеме, приведенной на рис. 6.2.

Рис. 6.2. Выведена в ремонт ВЛ 220 кВ «Агломерат 1»


Режим №3. Выведена в ремонт ВЛ 220 кВ «Агломерат 2»

    Для перевода электроустановки в режим №3 и, обратно, в нормальный режим работы, пользователь должен выполнить операции, согласно последовательности, указанной в таблице 4.

Таблица 4

Порядок перехода с режима №1 на режим №3 Порядок перехода с режима №3 на режим №1
1 Вывести АВР 1, 2 Включить ОД1 220 кВ
2 Включить СМВ1 яч.9 Включить ОД2 220 кВ
3 Отключить МВ ввода В2 яч.14 Включить ВВ 220 кВ яч 10
4 Отключить ТР2 яч.14 Включить ТР2 яч.14
5 Отключить ШР2 яч.14 Включить ШР2 яч.14
6 Вывести АВР 3, 4 Включить МВ ввода В2 яч.14
7 Включить СМВ2 яч.20 Отключить СМВ1 яч.9
8 Отключить МВ ввода В4 яч.31 Ввести АВР 1, 2
9 Отключить ТР4 яч.31 Включить ТР4 яч.31
10 Отключить ШР4 яч.31 Включить ШР4 яч.31
11 Отключить. ВВ 220 кВ яч 10 Включить МВ ввода В4 яч.31
12 Отключить ОД1 220 кВ Отключить СМВ2 яч.20
13 Отключить ОД2 220 кВ Ввести АВР 3, 4

 

    Состояние коммутационных аппаратов должно соответствовать схеме, приведенной на рис. 6.3.

Рис. 6.3. Выведена в ремонт ВЛ 220 кВ «Агломерат 2»


Режим №4. Выведен в ремонт Т1 63 мВа

    Для перевода электроустановки в режим №4 и, обратно, в нормальный режим работы, пользователь должен выполнить операции, согласно последовательности, указанной в таблице 5.

Таблица 5

Порядок перехода с режима №1 на режим №4 Порядок перехода с режима №4 на режим №1
1 Вывести АВР 3, 4 Вывести АВР 1, 2
2 Включить СМВ2 яч. 20 Включить СМВ1 яч. 9
3 Отключить МВ ввода В4 яч. 31 Отключить МВ ввода В2 яч. 14
4 Отключить ТР4 яч. 31 Отключить ВВ 220 кВ яч 10
5 Отключить ШР4 яч. 31 Включить ОД1 220 кВ
6 Вывести АВР 1, 2 Включить ВВ 220 кВ яч 10
7 Включить СМВ1 яч. 9 Включить ШР4 яч. 31
8 Отключить МВ ввода В2 яч. 14 Включить ТР4 яч. 31
9 Отключить. ВВ 220 кВ яч 10 Включить МВ ввода В4 яч. 31
10 Отключить ОД1 220 кВ Отключить СМВ2 яч. 20
11 Включить. ВВ 220 кВ яч 10 Ввести АВР 3, 4
12 Включить МВ ввода В2 яч. 14 Включить МВ ввода В2 яч. 14
13 Отключить СМВ1 яч. 9 Отключить СМВ1 яч. 9
14 Ввести АВР 1, 2 Ввести АВР 1, 2

 

    Состояние коммутационных аппаратов должно соответствовать схеме, приведенной на рис. 6.4.

Рис. 6.4. Выведен в ремонт Т1 63 мВа


Режим №5. Выведен в ремонт Т2 63 мВа

    Для перевода электроустановки в режим №5 и, обратно, в нормальный режим работы, пользователь должен выполнить операции, согласно последовательности, указанной в таблице 6.

Таблица 6

Порядок перехода с режима №1 на режим №5 Порядок перехода с режима №5 на режим №1
1 Вывести АВР 1, 2 Вывести АВР 3, 4
2 Включить СМВ1 яч. 9 Включить СМВ2 яч. 20
3 Отключить МВ ввода В2 яч. 14 Отключить МВ ввода В4 яч. 31
4 Отключить ТР2 яч. 14 Отключить ВВ 220 кВ яч 10
5 Отключить ШР2 яч. 14 Включить ОД2 220 кВ
6 Вывести АВР 3, 4 Включить ВВ 220 кВ яч 10
7 Включить СМВ2 яч. 20 Включить ШР2 яч. 14
8 Отключить МВ ввода В4 яч. 31 Включить ТР2 яч. 14
9 Отключить. ВВ 220 кВ яч 10 Включить МВ ввода В2 яч. 14
10 Отключить ОД2 220 кВ Отключить СМВ1 яч. 9
11 Включить. ВВ 220 кВ яч 10 Ввести АВР С1, 2
12 Включить МВ ввода В4 яч. 31 Включить МВ ввода В4 яч. 31
13 Отключить СМВ2 яч. 20 Отключить СМВ2 яч. 20
14 Ввести АВР 3, 4 Ввести АВР 3, 4

 

    Состояние коммутационных аппаратов должно соответствовать схеме, приведенной на рис. 6.5.

Рис. 6.5. Выведен в ремонт Т2 63 мВа

Режим №6. Выведен в ремонт Т3 100 мВа

 

       Для перевода электроустановки в режим №6 и, обратно, в нормальный режим работы, пользователь должен выполнить операции, согласно последовательности, указанной в таблице 7.

Таблица 7

Порядок перехода с режима №1 на режим №6 Порядок перехода С режима №6 на режим №1
1 Вывести АВР 1, 2 Отключить ВВ 220 кВ яч 12 РПП 2
2 Включить СМВ1 яч. 9 Включить ОД3 220 кВ
3 Отключить МВ ввода В1 яч. 5 Включить ВВ 220 кВ яч 12 РПП 2
4 Вывести АВР 3, 4 Включить ШР1 яч 5
5 Включить СМВ2 яч. 20 Включить ТР1 яч 5
6 Отключить МВ ввода В3 яч. 25 Включить МВ ввода В1 яч. 5
7 Отключить. ВВ 220 кВ яч 12 РПП2 Отключить СМВ1 яч. 9
8 Отключить ОД3 220 Кв Ввести АВР 1, 2
9 Отключить ТР1 яч 5 Включить ШР3 яч 25
10 Отключить ШР1 яч 5 Включить ТР3 яч 2
11 Отключить ТР3 яч 25 Включить МВ ввода В3 яч. 25
12 Отключить ШР3 яч 25 Отключить СМВ2 яч. 20
13 Включить ВВ-220 кВ яч. 12 РПП2 Ввести АВР 3, 4

 

       Состояние коммутационных аппаратов должно соответствовать схеме, приведенной на рис. 6. 6.

Рис. 5.6. Выведен в ремонт Т3 100 мВа

Приложение Б. Листинг основного модуля программы

unit MainMenu;

 

interface

 

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

StdCtrls, ExtCtrls, Gauges, Menus, ComCtrls, User1, Report,

NewScen, ImgList, Report1;

 

type

TForm1 = class(TForm)

TaskList: TListBox;

RunBtn: TButton;

ExtBtn: TButton;

MainMenu1: TMainMenu;

Menu1: TMenuItem;

Menu4: TMenuItem;

Menu41: TMenuItem;

Menu5: TMenuItem;

Bevel1: TBevel;

StatusBar1: TStatusBar;

 Image1: TImage;

ODT2: TImage;

ODT1: TImage;

BB50: TImage;

ODT3: TImage;

PBB2: TImage;

MBB2: TImage;

CMB1: TImage;

MBB1: TImage;

ABR1: TImage;

TRZ2: TImage;

TRZ1: TImage;

TRZ4: TImage;

TRZ3: TImage;

MBB4: TImage;

CMB2: TImage;

MBB3: TImage;

SRZ2: TImage;

SRZ9: TImage;

SR10: TImage;

SRZ1: TImage;

SRZ4: TImage;

SR37: TImage;

SR20: TImage;

SRZ3: TImage;

ABR2: TImage;

ResultBtn: TButton;

Label1: TLabel;

HelpBtn: TButton;

New: TMenuItem;

N2: TMenuItem;

Exit: TMenuItem;

Image2: TImage;

StaticText1: TStaticText;

Menu52: TMenuItem;

Label2: TLabel;

Menu2: TMenuItem;

Menu21: TMenuItem;

Menu22: TMenuItem;

procedure ExtBtnClick(Sender: TObject);

procedure TaskListMouseUp(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

procedure FormActivate(Sender: TObject);

procedure RunBtnClick(Sender: TObject);

procedure Menu41Click(Sender: TObject);

procedure MBB1Click(Sender: TObject);

procedure MBB2Click(Sender: TObject);

procedure MBB3Click(Sender: TObject);

procedure MBB4Click(Sender: TObject);

procedure CMB1Click(Sender: TObject);

  procedure CMB2Click(Sender: TObject);

procedure BB50Click(Sender: TObject);

procedure PBB2Click(Sender: TObject);

procedure TRZ1Click(Sender: TObject);

procedure TRZ2Click(Sender: TObject);

procedure TRZ3Click(Sender: TObject);

procedure TRZ4Click(Sender: TObject);

procedure SRZ1Click(Sender: TObject);

procedure SRZ2Click(Sender: TObject);

procedure SRZ3Click(Sender: TObject);

procedure SRZ4Click(Sender: TObject);

procedure SRZ9Click(Sender: TObject);

procedure SR10Click(Sender: TObject);

procedure SR20Click(Sender: TObject);

procedure SR37Click(Sender: TObject);

procedure ODT1Click(Sender: TObject);

procedure ODT2Click(Sender: TObject);

procedure ODT3Click(Sender: TObject);

procedure ABR1Click(Sender: TObject);

procedure ABR2Click(Sender: TObject);

procedure ResultBtnClick(Sender: TObject);

procedure HelpBtnClick(Sender: TObject);

procedure NewClick(Sender: TObject);

procedure Menu52Click(Sender: TObject);

procedure Menu21Click(Sender: TObject);

procedure Menu22Click(Sender: TObject);

 

private

{ Private declarations }

public

{ Public declarations }

 

end;

 

TStringList1 = class (TStringList);

TMyZap=class(TObject)

FNo: Integer;

 FImage: ShortString;

FState: Integer;

FComment: ShortString;

constructor Create(No: Integer; Image: ShortString; State: Integer; Comment: ShortString);

end;

 

var

Form1: TForm1;

TaskNumber: Integer;

WorkMode: Integer;

List1: TStringList1;

ActList: TList;

  Prot: TStringList;

   Zap: TMyZap;

    Switch: TImage;

     TaskName: string;

      Error: integer;

       Help: integer;

        Count: Integer;

      F: array [0..24] of boolean;

      E: array [0..24] of boolean;

implementation

 

uses Results;

 

{$R *.DFM}

 

constructor TMyZap.Create(No: Integer; Image: ShortString; State: Integer; Comment: ShortString);

begin

inherited Create;

FNo: =No;

FImage: =Image;

FState: =State;

FComment: =Comment;

end;

 

procedure SWState(AOwner: TImage; i: integer);

begin

if F[i]=false then begin

   with AOwner.Canvas do begin

           Pen.Color: =clWhite;

           MoveTo(6, 1);

           LineTo(6, 17);

           Pen.Width: =2;

           Pen.Color: =clBlack;

           Rectangle(1, 1, 17, 17);

           MoveTo(6, 17);

           LineTo(15, 1);

           end;

   F[i]: =true;

   end

   else begin

   with AOwner.Canvas do begin

           Pen.Color: =clWhite;

           MoveTo(6, 17);

           LineTo(15, 1);

           Pen.Width: =2;

           Pen.Color: =clBlack;

           Rectangle(1, 1, 17, 17);

           MoveTo(6, 1);

           LineTo(6, 17);

           end;

   F[i]: =false;

end;

end;

 

procedure ABRState(AOwner: TImage; i: integer);

begin

if F[i]=False then begin

   with AOwner.Canvas do begin

           Brush.Color: =clWhite;

           FloodFill(8, 8, clBlack, fsSurface);

           Pen.Width: =2;

           Pen.Color: =clBlack;

           MoveTo(1, 15);

           LineTo(8, 1);

           MoveTo(8, 1);

           LineTo(17, 15);

           MoveTo(17, 15);

           LineTo(1, 15);

   end;

   F[i]: =True;

   end

else begin

   with AOwner.Canvas do begin

        FloodFill(8, 8, clWhite, fsSurface);

        Pen.Width: =2;

        Pen.Color: =clBlack;

           MoveTo(1, 15);

           LineTo(8, 1);

           MoveTo(8, 1);

           LineTo(17, 15);

           MoveTo(17, 15);

           LineTo(1, 15);

        Brush.Color: =clBlack;

        FloodFill(8, 8, clBlack, fsBorder);

   end;

   F[i]: =False;

   end;

end;

 

procedure MVState(AOwner: TImage; i: integer);

begin

if F[i]=false then begin

   with AOwner.Canvas do begin

           Pen.Color: =clWhite;

           MoveTo(9, 6);

           LineTo(9, 11);

           Pen.Width: =2;

           Pen.Color: =clBlack;

           Rectangle(1, 1, 17, 17);

           MoveTo(6, 8);

           LineTo(11, 8);

           end;

   F[i]: =true;

   end

   else begin

   with AOwner.Canvas do begin

           Pen.Color: =clWhite;

           MoveTo(6, 8);

           LineTo(11, 8);

           Pen.Width: =2;

           Pen.Color: =clBlack;

           Rectangle(1, 1, 17, 17);

           MoveTo(9, 6);

           LineTo(9, 11);

           end;

   F[i]: =false;

end;

end;

 

function Analyze(AOwner: TComponent): boolean;

begin

Zap: =ActList.First;

if WorkMode=0 then

if (Zap.FImage=AOwner.Name)

   then begin

   if Zap.FImage< > '0' then ActList.Delete(ActList.IndexOf(ActList.First));

   Result: =true;

   Form1.Label1.Caption: ='';

   Prot.Append(Zap.FComment);

   end

     else begin

     Form1.Label1.Caption: ='   Ошибка';

     Prot.Append('Ошибка, '+Zap.FComment);

     Error: =Error+1;

     Result: =false;

     end

else Count: =Count+1;

Form1.ResultBtn.Visible: =True;

end;

 

{Считывание информации дла решения задач}

 

procedure Read;

var Fil: textfile;

s: string;

j: integer;

begin

for j: =1 to 10 do begin

s: ='Info\'+IntToStr(j)+'.str';

assign(fil, s);

reset(fil);

readln(fil, s);

Form1.TaskList.Items.Insert(j-1, s);

end;

end;

 

procedure ReadInfo(Num: integer);

var Fil: textfile;

s, s1: string;

i, j: integer;

begin

ActList: =TList.Create;

s: ='Info\'+IntToStr(Num)+'.str';

assign(fil, s);

reset(fil);

readln(fil, s);

readln(fil, s);

for i: =0 to 24 do

if s[i+1]='1' then F[i]: =true

           else F[i]: =false;

readln(fil, s);

for i: =0 to 24 do

if s[i+1]='1' then E[i]: =true

           else E[i]: =false;

for i: =1 to 15 do begin

readln(fil, s);

s1: =s;

for j: =1 to 7 do s1[j]: =' ';

ActList.Add(TMyZap.Create(StrToInt(s[1]+s[2]), s[3]+s[4]+s[5]+s[6], StrToInt(s[7]), s1));

end;

closefile(fil);

end;

 

procedure TForm1.FormActivate(Sender: TObject);

begin

   Form1.ResultBtn.Visible: =False;

   Form1.HelpBtn.Visible: =False;

   Form1.Label2.Visible: =false;

   Image1.Visible: =False;

   Image2.Visible: =False;

   StaticText1.Visible: =False;

   Label2.Visible: =False;

   StatusBar1.Panels[2].Text: ='Выберите режим работы и задачу.';

   StatusBar1.Panels[3].Text: ='Режим работы: ';

   TaskList.ItemIndex: =0;

   TaskNumber: =0;

   Read;

   User1.User.ShowModal;

end;

 

procedure TForm1.ExtBtnClick(Sender: TObject);

begin

 if Prot< > nil then Prot.Clear;

 if ActList< > nil then ActList.Clear;

 if Prot< > nil then Prot.Clear;

 Application.Terminate;

end;

 

procedure TForm1.TaskListMouseUp(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

var Point: TPoint;

begin

   Point.X: =Y; Point.Y: =Y;

   TaskNumber: =TaskList.ItemAtPos(Point, true);

   StatusBar1.Panels[2].Text: =Form1.TaskList.Items.Strings[TaskNumber];

   StatusBar1.Panels[1].Text: ='№'+IntToStr(1+TaskList.ItemAtPos(Point, true));

end;

 

procedure TForm1.RunBtnClick(Sender: TObject);

var s: string;

begin

   TaskList.Visible: =False;

   if WorkMode=0 then begin

   StatusBar1.Panels[3].Text: ='Режим работы: Тренировка';

   Form1.HelpBtn.Visible: =true;

   Form1.Label1.Visible: =true;

   Form1.Label2.Visible: =true;

   ResultBtn.Caption: ='Результаты';

   end;

   Image1.Visible: =true;

   Image2.Visible: =true;

   StaticText1.Visible: =true;

   ReadInfo(TaskNumber+1);

   Error: =0;

   Help: =0;

   Form1.Caption: =TaskList.Items[TaskNumber];

   {Начальные условия}

   SWState(ODT2, 0);

   SWState(ODT1, 1);

   SWState(ODT3, 3);

   MVState(MBB1, 10);

   MVState(MBB2, 7);

   MVState(MBB3, 19);

   MVState(MBB4, 17);

   MVState(CMB1, 8);

   MVState(CMB2, 18);

   MVState(PBB2, 4);

   MVState(BB50, 2);

   SWState(TRZ1, 6);

   SWState(TRZ2, 5);

      SWState(TRZ3, 16);

   SWState(TRZ4, 15);

   SWState(SRZ1, 14);

   SWState(SRZ2, 11);

   SWState(SRZ3, 24);

   SWState(SRZ4, 20);

   SWState(SRZ9, 12);

   SWState(SR10, 13);

   SWState(SR20, 23);

   SWState(SR37, 21);

   ABRState(ABR1, 9);

   ABRState(ABR2, 22);

   Prot: =TStringList.Create;

   if WorkMode=0 then s: =(' тренировки')

                 else s: =(' экзамена');

   Prot.Append('                                      Протокол'+s);

   Prot.Append('                               ---------------------------');

   Prot.Append('Фамилия: '+User1.N1);

   Prot.Append('Имя: '+User1.N2);

   Prot.Append('Отчество: '+User1.N3);

   Prot.Append('               ЗАДАЧА: '+TaskList.Items[TaskNumber]);

   Prot.Append('            --------------------------------------------');

   if WorkMode=0 then s: =(' прохождения тренировки: ')

                 else s: =(' сдачи экзамена: ');

   Prot.Append('Дата '+s+DateToStr(Date));

end;

 

procedure TForm1.Menu41Click(Sender: TObject);

begin

User.ShowModal;

end;

 

procedure TForm1.MBB1Click(Sender: TObject);

begin

if Analyze(MBB1)=True then MVState(MBB1, 10)

                 else MVState(MBB1, 10);

if F[10]=true then

end;

 

procedure TForm1.MBB2Click(Sender: TObject);

begin

if Analyze(MBB2)=True then MVState(MBB2, 7)

                 else MVState(MBB2, 7);

end;

 

procedure TForm1.MBB3Click(Sender: TObject);

begin

if Analyze(MBB3)=True then MVState(MBB3, 19)

                 else MVState(MBB3, 19);

end;

 

procedure TForm1.MBB4Click(Sender: TObject);

begin

if Analyze(MBB4)=True then MVState(MBB4, 17)

                 else MVState(MBB4, 17);

end;

 

procedure TForm1.CMB1Click(Sender: TObject);

begin

if Analyze(CMB1)=True then MVState(CMB1, 8)

                 else MVState(CMB1, 8);

end;

 

procedure TForm1.CMB2Click(Sender: TObject);

begin

if Analyze(CMB2)=True then MVState(CMB2, 18)

                 else MVState(CMB2, 18);

end;

 

procedure TForm1.BB50Click(Sender: TObject);

begin

if Analyze(BB50)=True then MVState(BB50, 2)

                 else MVState(BB50, 2);

end;

 

procedure TForm1.PBB2Click(Sender: TObject);

begin

if Analyze(PBB2)=True then MVState(PBB2, 4)

                 else MVState(PBB2, 4);

end;

 

procedure TForm1.TRZ1Click(Sender: TObject);

begin

if Analyze(TRZ1)=True then SWState(TRZ1, 6)

                 else SWState(TRZ1, 6);

end;

 

procedure TForm1.TRZ2Click(Sender: TObject);

begin

if Analyze(TRZ2)=True then SWState(TRZ2, 5)

                 else SWState(TRZ2, 5);

end;

 

procedure TForm1.TRZ3Click(Sender: TObject);

begin

if Analyze(TRZ3)=True then SWState(TRZ3, 16)

                 else SWState(TRZ3, 16);

end;

 

procedure TForm1.TRZ4Click(Sender: TObject);

begin

if Analyze(TRZ4)=True then SWState(TRZ4, 15)

                 else SWState(TRZ4, 15);

end;

 

procedure TForm1.SRZ1Click(Sender: TObject);

begin

if Analyze(SRZ1)=True then SWState(SRZ1, 14)

                 else SWState(SRZ1, 14);

end;

 

procedure TForm1.SRZ2Click(Sender: TObject);

begin

if Analyze(SRZ2)=True then SWState(SRZ2, 11)

                 else SWState(SRZ2, 11);

end;

 

procedure TForm1.SRZ3Click(Sender: TObject);

begin

if Analyze(SRZ3)=True then SWState(SRZ3, 24)

                 else SWState(SRZ3, 24);

end;

 

procedure TForm1.SRZ4Click(Sender: TObject);

begin

if Analyze(SRZ4)=True then SWState(SRZ4, 20)

                 else SWState(SRZ4, 20);

end;

 

procedure TForm1.SRZ9Click(Sender: TObject);

begin

if Analyze(SRZ9)=True then SWState(SRZ9, 12)

                 else SWState(SRZ9, 12);

end;

 

procedure TForm1.SR10Click(Sender: TObject);

begin

if Analyze(SR10)=True then SWState(SR10, 13)

                 else SWState(SR10, 13);

end;

 

procedure TForm1.SR20Click(Sender: TObject);

begin

if Analyze(SR20)=True then SWState(SR20, 23)

                 else SWState(SR20, 23);

end;

 

procedure TForm1.SR37Click(Sender: TObject);

begin

if Analyze(SR37)=True then SWState(SR37, 21)

                 else SWState(SR37, 21);

end;

 

procedure TForm1.ODT1Click(Sender: TObject);

begin

if Analyze(ODT1)=True then SWState(ODT1, 1)

                 else SWState(ODT1, 1);

end;

 

procedure TForm1.ODT2Click(Sender: TObject);

begin

if Analyze(ODT2)=True then SWState(ODT2, 0)

                 else SWState(ODT2, 0);

end;

 

procedure TForm1.ODT3Click(Sender: TObject);

begin

if Analyze(ODT3)=True then SWState(ODT3, 3)

                 else SWState(ODT3, 3);

end;

 

procedure TForm1.ABR1Click(Sender: TObject);

begin

if Analyze(ABR1)=True then ABRState(ABR1, 9)

                 else ABRState(ABR1, 9);

 

end;

 

procedure TForm1.ABR2Click(Sender: TObject);

begin

if Analyze(ABR2)=True then ABRState(ABR2, 22)

                 else ABRState(ABR2, 22);

end;

 

procedure TForm1.ResultBtnClick(Sender: TObject);

var i: integer;

s: string;

begin

Error: =0;

Count: =0;

if WorkMode=1 then begin

for i: =0 to 24 do if E[i]=F[i] then Error: =Error+1;

if Error=0 then s: ='Хорошо';

if Error=1 then s: ='Удовлетворительно';

if Error> 2 then s: ='Неудовлетворительно';

Results.Result.Label1.Caption: ='Оценка: '+s;

Prot.Append('Оценка: '+s);

Results.Result.ShowModal;

TaskList.Visible: =True;

end;

if (WorkMode=0)and(Zap.FNo=0)and(Zap.FImage='0000')and(Zap.FState=0) then begin

   Prot.Append('Количество ошибок: '+IntToStr(Error));

   Prot.Append('Количество обращений к подсказке: '+IntToStr(Help));

   Results.Result.Label1.Caption: ='Количество ошибок: '+IntToStr(Error);

   Results.Result.Label2.Caption: ='Количество обращений к подсказке: '+IntToStr(Help);

   Results.Result.ShowModal;

   Actlist.Clear;

   TaskList.Visible: =True;

   end;

end;

 

procedure TForm1.HelpBtnClick(Sender: TObject);

begin

if StatusBar1.Panels[1].Text='№'

   then

   Label1.Caption: ='   Выберите задачу'

   else

   begin

   Zap: =ActList.First;

   Label1.Caption: =Zap.FComment;

   Help: =Help+1;

   end;

end;

 

procedure TForm1.NewClick(Sender: TObject);

begin

FormScene.Position: =poScreenCenter;

FormScene.ShowModal;

end;

 

procedure TForm1.Menu52Click(Sender: TObject);

var s: string;

i: integer;

begin

Report.ReportForm.ProtList.Clear;

if Prot< > nil then begin

for i: =0 to Prot.Count-1 do

Report.ReportForm.ProtList.Items.Append(Prot.Strings[i]);

s: =TimeToStr(Now);

if FileExists('Info\Report.txt') then Prot.SaveToFile('Info\Report'+s[7]+'.txt')

                            else Prot.SaveToFile('Info\Report.txt');

ReportForm.ShowModal;

end;

end;

 

procedure TForm1.Menu21Click(Sender: TObject);

begin

   WorkMode: =0;

   StatusBar1.Panels[3].Text: ='Режим работы: Тренировка';

   Form1.HelpBtn.Visible: =true;

   Form1.Label1.Visible: =true;

   Form1.Label2.Visible: =true;

   ResultBtn.Caption: ='Результаты';

end;

 

procedure TForm1.Menu22Click(Sender: TObject);

begin

   WorkMode: =1;

   StatusBar1.Panels[3].Text: ='Режим работы: Экзамен';

   Form1.HelpBtn.Visible: =false;

   Form1.Label1.Visible: =false;

   Form1.Label2.Visible: =false;

   ResultBtn.Caption: ='Готово';

end;

 

end.

 

 


Поделиться:



Последнее изменение этой страницы: 2019-10-03; Просмотров: 161; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.394 с.)
Главная | Случайная страница | Обратная связь