📄 unit1.~pas
字号:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons;
type
TForm1 = class(TForm)
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
OpenDialog1: TOpenDialog;
Edit1: TEdit;
Label1: TLabel;
Edit2: TEdit;
Label2: TLabel;
Label3: TLabel;
Edit3: TEdit;
BitBtn3: TBitBtn;
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
private
{ Private declarations }
procedure WMMOVE(var Msg:Tmessage);message WM_MOVE;
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
var
time: array of string;
zimu1,zimu2,zimu3,zimu4: array of string;
juli:array of real;
num1,num2,num3:array of integer;
changdu,number:integer; // number:数据行数
{$R *.dfm}
procedure TForm1.WMMOVE(var Msg:Tmessage);
begin
inherited;
if Form1.Left<20 then
Form1.Left:=0;
if Form1.Top<20 then
Form1.Top:=0;
if (Screen.Width-Form1.Left-Form1.Width)<20 then
Form1.Left:=Screen.Width-Form1.Width;
if (Screen.Height-Form1.Top-Form1.Height)<20 then
Form1.Top:=Screen.Height-Form1.Height;
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
var
ff: Textfile;
a:string[13];
b,c,d,e:string[2];
f,g,h:integer;
lin1,lin2,lin3,lin4:string[1];//临时变量
i:integer;
o:string;
begin
//changdu:=0;
changdu:=strtoint(edit2.Text);
setlength(time,changdu);
setlength(zimu1,changdu);
setlength(zimu2,changdu);
setlength(zimu3,changdu);
setlength(zimu4,changdu);
setlength(num1,changdu);
setlength(num2,changdu);
setlength(num3,changdu);
for i := 0 to changdu-1 do time[i]:=o;
for i := 0 to changdu-1 do zimu1[i]:=o;
for i := 0 to changdu-1 do zimu2[i]:=o;
for i := 0 to changdu-1 do zimu3[i]:=o;
for i := 0 to changdu-1 do zimu4[i]:=o;
for i := 0 to changdu-1 do num1[i]:=100;
for i := 0 to changdu-1 do num2[i]:=100;
for i := 0 to changdu-1 do num3[i]:=100;
if OpenDialog1.Execute then
begin
//showmessage('数据读取中…………');
AssignFile(ff, OpenDialog1.FileName);
reset(ff);
for i := 0 to changdu-1 do
begin
if not Eof(ff) then
begin
readln(ff, a,lin1,b,lin2,c,lin3,d,lin4,e,f,g,h);
time[i]:=a;
zimu1[i]:=b;
zimu2[i]:=c;
zimu3[i]:=d;
zimu4[i]:=e;
num1[i]:=f;
num2[i]:=g;
num3[i]:=h;
end
else break;
end;
number:=0;
for i := 0 to changdu-1 do
if num1[i]=100 then
begin
number:=i;
break;
end;
edit1.text:=inttostr(number);
closefile(ff);
end;
end;
procedure TForm1.BitBtn2Click(Sender: TObject);
var
i:integer;
xishu:real;
filename:string;
f1: Textfile;
begin
xishu:=strtofloat(edit3.text);
setlength(juli,number);
for i:=0 to number-1 do
juli[i]:=0;
for i:=0 to number-1 do
begin
juli[i]:=num1[i]*10000+num2[i]*100+num3[i];
juli[i]:=juli[i]*xishu;
end;
Filename := ExtractFilePath(Application.ExeName) + ExtractFilename(OpenDialog1.FileName)+'处理结果' + '.txt';
AssignFile(f1, filename);
ReWrite(f1);
for i := 0 to number-1 do
writeln(f1,time[i],' ',zimu1[i],' ',zimu2[i],' ',zimu3[i],' ',zimu4[i],'',juli[i]);
CloseFile(f1);
bitbtn3.Enabled:=true;
end;
procedure TForm1.BitBtn3Click(Sender: TObject);
var
i,m:integer;
filename:string;
f1: Textfile;
begin
m:=0;
Filename := ExtractFilePath(Application.ExeName) + ExtractFilename(OpenDialog1.FileName)+'处理结果清零' + '.txt';
AssignFile(f1, filename);
ReWrite(f1);
for i := 0 to number-1 do
if juli[i]>0 then
begin
writeln(f1,time[i],' ',zimu1[i],' ',zimu2[i],' ',zimu3[i],' ',zimu4[i],'',juli[i]);
m:=m+1;
end;
writeln(f1,'测试点数:',' ',m);
CloseFile(f1);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -