Einheit Einheit1;
Schnittstelle
Verwendung
Fenster, Nachrichten, Sysutilils, Varianten, Klassen, Grafiken, Steuerelemente, Formulare,
Dialoge, comctrls, stdctrls, extctrls, grids, Kalender, Messgeräte, JPEG;
Typ
Tform1 = Klasse (tform)
SHAPE1: Ford;
SHAPE2: Für die Flut;
Form3: für das Gegenteil;
SHAPE4: Für die Flut;
Form5: Registerkarten;
SHAPE6: Für die Flut;
Form7: für die Flut;
SHAPE8: für das Gegenteil;
SHAPE9: Für die Flut;
SHAPE10: Für eine Pause;
SHAPE11: Für das Gegenteil;
SHAPE12: Formore;
Statictext1: tStatictictext;
Statictext2: tStatictictext;
Statictext3: tStatictText;
Statictext4: tStatictictext;
Statictext5: tStatictText;
Statictext6: tStatictictext;
Statictext7: tStatictictext;
Edit1: tedit;
Edit2: titit;
Edit3: tedit;
Edit4: titit;
Edit5: titit;
Edit6: titit;
Edit7: Teded;
Edit8: titit;
Edit9: titit;
Edit10: titit;
Edit11: Teded;
Edit12: tedit;
Edit13: titit;
Edit16: Tedit;
Edit15: titit;
Edit16: Tedit;
Edit17: titit;
Edit18: Tedit;
Edit19: tedod;
Edit20: Teded;
Edity21: titit;
Edit22: teep;
Edit23: titit;
Edit24: tedit;
Edit25: titit;
Edit26: titit;
Edit27: titit;
Edit22: titit;
Button1: Tbutton;
Edit2t2: genehmigt;
Timer1: Timtimer;
Timer2: Zeit;
ListBox1: TlistBox;
Gauge1: Tgauge;
Gauge2: Tgauge;
Gauge3: Tgauge;
Gauge4: TGG;
Label1: Tlabel;
Label2: Tlabel;
Label3: Tlabel;
Label4: Tlabel;
Edit30: Tedit;
Bild1: Timage;
Label5: Tlabel;
Button2: Tbutton;
Timer3: Timter;
Button4: Tbutton;
Button5: Tbutton;
Button3: Tbutton;
Label6: Tlabel;
Button6: Tbutton;
Timer4: Timter;
Prozedur Timer1Stimer (Absender: Tobject);
PROCEDURE Taste1Click (Absender: Tobject);
Prozedur Timer2Timer (Absender: Tobject);
PROCEDURE Button2Click (Absender: Tobject);
Prozedur Timer33Timer (Absender: Tobject);
PROCEDURE Button3Click (Absender: Tobject);
PROCEDURE Button4Click (Absender: Tobject);
PROCEDURE Taste5Click (Absender: Tobject);
Prozedur Formcreate (Absender: Tobject);
PROCEDURE TAFT6CLICK (Absender: Tobject);
procedure timer4timer (Absender: tobject);
Privat
{Private Deklarationen}
öffentlich
{Öffentliche Erklärungen}
Ende;
Typ
PCB = Datensatz
Name: String;
ARV: Ganzzahl;
SVT: Ganzzahl;
STT: Ganzzahl;
Fnt: Ganzzahl;
ZZSJ: Ganzzahl;
DQSJ: Real;
fnhflflg: bool;
Sttflg: boob;
Ende;
PCBX = Array [1.4] von PCB;
var
Nullflag: bol = false;
FORWORD: BOL = False;
SubemP: Integer = 0;
J: Integer = 1;
Openflg: Bolo = True;
Tempid: Integer = 1;
fnehnum: Integer = 0;
PCBUM: Integer = 0;
NTP: bol = false;
Tempok: bol = false;
Flagge: bol = false;
Form1: tform1;
Show: tdatetime;
Graf: Integer = -1;
Pro: Integer = 0;
// pcbad: Integer = 1;
WriteFlg: Integer = 0;
PCBs: PCBX;
min, sec, msc: wort;
Methode: Integer = 1;
Durchführung
Einheit 3 verwenden;
{$ R * .dfm}
procedure tform1.timer1p1.timer1timer (Absender: tobject);
var
W: Ganzzahl;
F: Ganzzahl;
beginnen
Wenn Flag = true und nullflag = false und falsch 远为 true
beginnen
Zählen: = count + 1;
listboxes1.Items.add (inttoStr (count);
für W: = 1 bis 4 tun
beginnen
Wenn PCBs [W] .Arv = cocen
beginnen
Timer2.Enabled: = false;
Pcbum: = pcbnum + 1;
Timer2.Enabled: = true;
Ende;
Ende;
Wenn openflg = false dann
beginnen
Wenn count (count = pcbs [tempid] .stt + pcbs [tempid] .svt) dann
beginnen
Pcbs [tempid] .fnhflg: = true;
fnehnum: = fnehre + 1;
Wenn fnehnum = 4 dann
beginnen
Flagge: = falsch;
PCBs [1] .fnt: = pcbs [1] .stt + pcbs [1] .svt;
PCBs [1] .zzzsj: = pcbs [1] .fnt-pcbb [1] .Arv;
Pcbs [1] .dqsj: = pcbs [1] .zzsj / (pcbs [1] .lnt);
PCBs [2] .fnt: = pcbs [2] .stt + pcbs [2] .svt;
PCBs [2] .zzzsj: = pcbs [2] .fnt-pcbs [2] .Arv;
PCBs [2] .dqsj: = pcbs [2] .zzsj / (PCBs [2] .ltt);
PCBs [3] .fnt: = pcbs [3] .stt + pcbs [3] .svt;
Pcbs [3] .zzzsj: = pcbs [3] .fnt-pcbs [3 .Arv;
Pcbs [3] .dqsj: = pcbs [3] .zzsj / (pcbs [3] .ltt);
PCBs [4] .fnt: = pcbs [4] .stt + pcbs [4] .svt;
PCBs [4] .zzzsj: = pcbs [4] .fnt-pcbs [4] .Arv;
PCBs [4] .DQSJ: = PCBS [4] .zzsj/ (PCBs [4] .tt);
Edit13.text: = inttoStr (pcbs [1] .tt);
Edit14.text: = inttoStr (pcbs [1] .stt + pcbs [1] .svt);
Edit15.text: = inttoStr (pcbs [1] .zzsj);
Edit16.text: = flattostr (pcbs [1] .dqsj);
Editi7.text: = inttoStr (pcbs [2] .stt);
Editi.text: = inttoStr (pcbs [2] .stt + pcbs [2] .svt);
Edit19.text: = inttoStr (pcbs [2] .zzsj);
Edit20.text: = flattostr (pcbs [2] .dqsj);
Edit21.text: = inttoStr (pcbs [3] .tt);
edit22.text: = inttoStr (pcbs [3] .stt + pcbs [3.svt);
Edit23.text: = inttoStr (pcbs [3] .zzsj);
edit24.text: = flattostr (pcbs [3] .dqsj);
edit25.text: = inttoStr (pcbs [4] .tt);
Edit26.text: = inttoStr (pcbs [4] .stt + pcbs [4] .svt);
Edit27.text: = inttoStr (pcbs [4] .zzsj);
Edit22.text: = flofostr (pcbs [4] .dqsj);
Ende;
Openflg: = wahr; // 改 !!!!!!!!
Tempok: = false;
Ende;
Ende;
für f: = 1 bis 4 tun
beginnen
if (count = pcbs [f] .stt + pcbs [f] .svt) und pcbsvt1
Listbr.idds.add (pcbs [f] .name + '完成 !!!!');
Ende; // für
Ende; // Flag = Ture
Wenn openflg = false dann
beginnen
Fall tempid von
1: Beginnen Sie
ifcls [1] .svt = 1 dann
beginnen
Gauge1.MaxValue: = 2;
GUGE1.PROGRESS: = 2;
Ende
anders
beginnen
Gauge1.MaxValue: = pcbs [1] .svt;
Gauge1.Progress: = count-pcbs [1] .stt;
Ende;
Ende;
2: Beginnen Sie
guge2.maxValue: = pcbs [2] .svt;
Gauge2.Progress: = count-pcbs [2] .stt;
Ende;
3: Beginnen Sie
guge3.maxValue: = pcbs [3] .svt;
Gauge3.Progres: = count-pcbs [3] .stt;
Ende;
4: Beginnen Sie
guge44.maxValue: = pcbs [4] .svt;
Gauge4.Progress: = count-pcbs [4] .tt;
Ende; // 4;
Ende;
Ende; // OpenFlg = Falsch
Wenn PCBs [1] .fnhflg = true dann dann
Gauge1.Progress: = PCBs [1] .SVT;
Wenn PCBs [2] .fnhflg = Di dann dann
Gauge2.Progress: = pcbs [2] .svt;
Wenn die PCs [3] .fnhflg = tue dann
Gauge3.Progres: = PCBs [3] .SVT;
IFF -PCs [4] .fnhflg = then dann
Gauge4.Progress: = PCBs [4] .SVT;
Ende;
procedure tform1.button1click (Absender: tobject);
beginnen
Button2.Enabled: = false;
Timer3.Enabled: = false;
Timer2.Enabled: = true;
Timer1.Enabled: = true;
Timer4.Enabled: = false;
versuchen
Flagge: = wahr;
PCBs [1] .Name: = edit1.orthtatext;
PCBs [1] .Arv: = strtint (edit2.text);
Pcbs [1] .svt: = strtouch (edit3.text);
PCBs [1].
PCBs [1] .fnHflg: = false;
PCBs [2] .Name: = edit4.text;
PCBs [2] .Arv: = strtint (editt5.text);
Pcbs [2] .svt: = strtouch.text);
PCBs [2] .sttflg: = false;
PCBs [2] .fnHflg: = false;
PCBs [3] .Name: = edit7.text;
PCBs [3] .Arv: = strtint (edit8.text);
PCBs [3] .svt: = strtouch (edit9.text);
PCBs [3] .sttflg: = false;
PCBs [3] .fnHflg: = false;
PCBs [4] .Name: = edit10.text;
PCBs [4] .Arv: = strtint (edit11.text);
PCBs [4] .svt: = strtoot (edit12.text);
PCBs [4].
PCBs [4] .fnHflg: = false;
Nullflag: = false;
Außer
nullflag: = wahr;
Sendung ('请将数据填完整');
Ende;
Ende;
procedure tform1.timer2Timer (Absender: tobject);
var
I: Ganzzahl;
beginnen
Wenn fnehnum <pcbox dann
beginnen
if (openflg = true) und (pcbumd> 0))))))
beginnen
für i: = 1 bis pcbrruc Rühren
beginnen
Wenn pcbs [i] .fnhflg = false
beginnen
Wenn tempok = false dann
beginnen
SUREMP: = TEMPID;
Tempid: = i;
Tempok: = true;
Ende;
Wenn pcbs [i] .SVT <pcbs [tempid] .svt dann
beginnen
//timer1.enabled:/false;
Tempid: = i;
//timer1.Enabled: lue;
Ende; // Wenn PCBs [i].
Ende;
Ende;
Openflg: = false;
Pcbs [tempid] .stt: = count;
Pcbs [tempid] .sttflg: = true;
//listbox1.idd.add ('进程' + pcbs [subtem] .name + 'fnh');
listboxes.atms.add ('进程' + pcbs [tempid] .name + '被调度');
Ende; // if (openflg = true und phbumt> 0)
Ende; // wenn fnhnum <pcbnum dann
Ende; // Verfahren
procedure tform1.button2click (Absender: tobject);
beginnen
Button1.Enabled: = false;
Timer1.Enabled: = false;
Timer2.Enabled: = false;
Timer3.Enabled: = true;
Timer4.Enabled: = true;
versuchen
Flagge: = wahr;
PCBs [1] .Name: = edit1.orthtatext;
PCBs [1] .Arv: = strtint (edit2.text);
Pcbs [1] .svt: = strtouch (edit3.text);
PCBs [1] .sttflg: = true;
PCBs [1] .fnHflg: = false;
PCBs [2] .Name: = edit4.text;
PCBs [2] .Arv: = strtint (editt5.text);
Pcbs [2] .svt: = strtouch.text);
PCBs [2] .sttflg: = false;
PCBs [2] .fnHflg: = false;
PCBs [3] .Name: = edit7.text;
PCBs [3] .Arv: = strtint (edit8.text);
PCBs [3] .svt: = strtouch (edit9.text);
PCBs [3] .sttflg: = false;
PCBs [3] .fnHflg: = false;
PCBs [4] .Name: = edit10.text;
PCBs [4] .Arv: = strtint (edit11.text);
PCBs [4] .svt: = strtoot (edit12.text);
PCBs [4].
PCBs [4] .fnHflg: = false;
Nullflag: = false;
Außer
nullflag: = wahr;
Sendung ('请将数据填完整');
Ende;
Ende;
procedure tform1.timer3Timer3Timerter (Absender: tobject);
var
M: Ganzzahl;
beginnen
if (flag = true) und (ntp = false) und (nullflag = false)) dann
Begin // wenn falg = true dann
Zählen: = count + 1;
listboxes1.Items.add (inttoStr (count);
für m: = 1 bis 4do
Beginnen Sie // für m: = 1 bis 5 tun
If ((pcbs [m] .sttfg = true) und (pcbs [m] .fnhflg = false)))
Begin // if (pcb [m] .sttflg = true und pcb [m] .fnhflg = false)
Wenn count = pcbs [m] .stt + pcbs [m] .SVT dann
Begin // if (count = pcbs [m] .stt + pcbs [m] .svt) dann
Pcbs [m] .fnhflg: = true;
//timer4.enportdi: = false;
Pro: = 0;
//timer4.enportd: = true;
ListBox1.itms.add ('进程:' + pcbs [m] .name + '完成 !!!!');
Wenn m <4 dann
Beginnen Sie // wenn m <4 dann
// pcbs losm+1 von.stttlg: = true;
// pcbs losm+1 von.stt: = count;
Vorwort: = true;
Ende; // Wenn m <4 dann
Pcbs [m] .fnt: = count;
Pcbs [m] .zzzsj: = pcbs [m] .fnt-pcbs [m] .Arv;
Pcbs [m] .dqsj: = pcbs [m] .zzsj / (pcbs [m] .ldt);
Ende; // if (count = pcbs [m] .stt + pcbs [m].
Ende; // if (PCB [m] .sttflg = true und pcb [m].
Ende; // für M: = 1 bis 5 tun
IFF -PCs [4] .fnhflg = then dann
beginnen
NTP: = True;
Edit13.text: = inttoStr (pcbs [1] .tt);
Edit14.text: = inttoStr (pcbs [1] .stt + pcbs [1] .svt);
Edit15.text: = inttoStr (pcbs [1] .zzsj);
Edit16.text: = flattostr (pcbs [1] .dqsj);
Editi7.text: = inttoStr (pcbs [2] .stt);
Editi.text: = inttoStr (pcbs [2] .stt + pcbs [2] .svt);
Edit19.text: = inttoStr (pcbs [2] .zzsj);
Edit20.text: = flattostr (pcbs [2] .dqsj);
Edit21.text: = inttoStr (pcbs [3] .tt);
edit22.text: = inttoStr (pcbs [3] .stt + pcbs [3.svt);
Edit23.text: = inttoStr (pcbs [3] .zzsj);
edit24.text: = flattostr (pcbs [3] .dqsj);
edit25.text: = inttoStr (pcbs [4] .tt);
Edit26.text: = inttoStr (pcbs [4] .stt + pcbs [4] .svt);
Edit27.text: = inttoStr (pcbs [4] .zzsj);
Edit22.text: = flofostr (pcbs [4] .dqsj);
Ende;
für m: = 1 bis 4 tun
beginnen
If (count> = pcbs [m] .arv) und (pcbs [m] .sttfg = false)) dann
Wenn vorword = true dann
beginnen
Pcbs [m] .sttfg: = true;
PCBs [m] .stt: = count;
Vorwort: = false;
Ende;
Ende; // für M: = 1 bis 4 tun
Gauge1.MaxValue: = pcbs [1] .svt;
guge2.maxValue: = pcbs [2] .svt;
guge3.maxValue: = pcbs [3] .svt;
guge44.maxValue: = pcbs [4] .svt;
Wenn PCBs [1] .sttflg = true und pcbs [1] .fnhflg = false
beginnen
//gauge1.Progressive:=gaugh1.maxValue: = pcbs ces1 ist verfügbar.shtt;
Gauge1.Progress: = count-pcbs [1] .stt;
Ende // IFFBS [1] .sttflg = true und pcbs [1] .fnhflg = false
Sonst IFF -PCs [1] .fnhflg = True dann dann
Gauge1.Progress: = PCBs [1] .SVT;
Wenn die PCs [2] .sttfg = true und pcbs [2] .fnhflg = false
beginnen
Gauge2.Progress: = count-pcbs [2] .stt;
Ende // IFFBS [1] .sttflg = true und pcbs [1] .fnhflg = false
Elee if pcbs [2] .fnhflg = dan
Gauge2.Progress: = pcbs [2] .svt;
Wenn die PCs [3] .sttfg = true und pcbs [3 .fnhflg = false
beginnen
Gauge3.Progres: = count-pcbs [3] .stt;
Ende // IFFBS [1] .sttflg = true und pcbs [1] .fnhflg = false
Elee if pcbs [3] .fnhflg = dan
Gauge3.Progres: = PCBs [3] .SVT;
Wenn die PCs [4] .sttflg = true und pcbs [4] .fnhflg = false
beginnen
Gauge4.Progress: = count-pcbs [4] .tt;
Ende // IFFBS [1] .sttflg = true und pcbs [1] .fnhflg = false
Elee if pcbs [4] .fnhflg = dan
Gauge4.Progress: = PCBs [4] .SVT;
Ende; // wenn falg = true dann
Ende;
procedure tform1.button3click (Absender);
beginnen
Form1.CLOSE;
//end.//do vorbei
Ende;
procedure tform1.button4click (Absender: tobject);
beginnen
Vorwort: = false;
Subemp: = 0;
J: = 1;
Openflg: = wahr;
Tempid: = 1;
fnehnum: = 0;
PCBUM: = 0;
NTP: = false;
Tempok: = false;
Flagge: = falsch;
Gauge1.Progress: = 0;
Gauge2.Progress: = 0;
Gauge3.Progress: = 0;
Gauge4.Progress: = 0;
Button2.Enported: = true;
Button1.Enabled: = True;
Zählen: = - 1;
Pro: = 0;
// pcbad: Integer = 1;
WriteFlg: = 0;
Flagge: = falsch;
Nullflag: = false;
edit1.text: = ';
Edit2.text: = ';
Edit3.text: = ';
Edit4.text: = ';
Edit5.text: = ';
Edit6.text: = ';
edit7.text: = ';
edit8.text: = ';
Edit9.text: = ';
edit9.text: = ';
edit11.text: = ';
edit12.text: = ';
Edit13.text: = '系统填写';
Edit14.text: = '系统填写';
Edit15.text: = '系统填写';
edit16.text: = '系统填写';
Editian.text: = '系统填写';
Editi.text: = '系统填写';
Edit19.text: = '系统填写';
Edit20.text: = '系统填写';
Edit21.text: = '系统填写';
edit22.text: = '系统填写';
Edit23.text: = '系统填写';
edit24.text: = '系统填写';
edit25.text: = '系统填写';
Edit26.text: = '系统填写';
Edit27.text: = '系统填写';
Edit22.text: = '系统填写';
PCBs [1] .fnHflg: = false;
PCBs [1].
PCBs [2] .fnHflg: = false;
PCBs [2] .sttflg: = false;
PCBs [3] .fnHflg: = false;
PCBs [3] .sttflg: = false;
PCBs [4] .fnHflg: = false;
PCBs [4].
Ende;
procedure tform1.button5click (Absender: tobject);
beginnen
Form3.Show;
Ende;
procedure tform1.field: objektion);
beginnen
Form100FieldStyle: = fsSstsyontop;
Eposatemwindow (Handle, 2000, AW_Center);
Form100FormStyle: = fsnormal;
Ende;
procedure tform1.button6click (Absender: tobject);
beginnen
edit1.text: = 'a';
Edit2.text: = '0';
Edit3.text: = '3';
edit4.text: = 'b';
Edit5.Text: = '5';
Edit6.text: = '2';
Edit7.Text: = 'C';
edit8.text: = '5';
Edit9.Text: = '3';
edit19.text: = 'd';
edit11.text: = '5';
edit12.text: = '2';
Ende;
procedure tform1.timer4Timer4Timer (Absender: tobject);
beginnen
If ((pcbs [1] .Arv = count) und (pcbs [1] .sttflg = false)) dann
beginnen
Vorwort: = true;
Ende;
Ende;
Ende.
Einheit Einheit2;
Schnittstelle
Verwendung
Fenster, Nachrichten, Sysutilils, Varianten, Klassen, Grafiken, Steuerelemente, Formulare,
Dialoge, jpeg, extctrls, stdctrls;
Typ
Tform2 = Klasse (tform)
Bild1: Timage;
Label1: Tlabel;
Label2: Tlabel;
Label3: Tlabel;
Privat
{Private Deklarationen}
öffentlich
{Öffentliche Erklärungen}
Ende;
Typ
PCB = Datensatz
Name: String;
ARV: Ganzzahl;
SVT: Ganzzahl;
STT: Ganzzahl;
Fnt: Ganzzahl;
ZZSJ: Ganzzahl;
DQSJ: Real;
fnhflflg: bool;
Sttflg: boob;
Ende;
PCBX = Array [1.4] von PCB;
var
Form2: tform2;
PCBs: PCBX;
Durchführung
Einheit 1 verwenden;
{$ R * .dfm}
Ende.
Einheit Einheit3;
Schnittstelle
Verwendung
Fenster, Nachrichten, Sysutilils, Varianten, Klassen, Grafiken, Steuerelemente, Formulare,
Dialoge, stdctrls, comctrls, jpeg, extctrls;
Typ
Tform3 = Klasse (tform)
Richedit1: Trichit;
Privat
{Private Deklarationen}
öffentlich
{Öffentliche Erklärungen}
Ende;
var
Form3: tform3;
Durchführung
{$ R * .dfm}
Ende.