我用memo显示后,为什么激发这个事件,而memo里面的显示是很混乱的呢?在线等待!procedure TForm2.Button2Click(Sender: TObject);
var
n:integer;
sum1,sum2,sum3,sum4:real;
begin
table1.Filtered:=false;
table1.Refresh;
sum1:=0;sum2:=0;sum3:=0;sum4:=0;n:=0;
table1.First;
with table1 do
try
while not eof do
begin
sum1:=sum1+fieldbyname('大学英语').asfloat;
sum2:=sum2+fieldbyname('高等数学').asfloat;
sum3:=sum3+fieldbyname('思想修养').asfloat;
sum4:=sum4+fieldbyname('计算机基础').asfloat;
n:=n+1;
next;
end;
if n<>0 then
begin
memo3.Lines.Strings[0]:='大学英语平均分:'+floattostr(sum1/n);
memo3.Lines.Strings[1]:='高等数学平均分:'+floattostr(sum2/n);
memo3.Lines.Strings[2]:='思想修养平均分:'+floattostr(sum3/n);
memo3.Lines.Strings[3]:='计算机基础平均分:'+floattostr(sum4/n);
end;
finally;
end;
end;
var
n:integer;
sum1,sum2,sum3,sum4:real;
begin
table1.Filtered:=false;
table1.Refresh;
sum1:=0;sum2:=0;sum3:=0;sum4:=0;n:=0;
table1.First;
with table1 do
try
while not eof do
begin
sum1:=sum1+fieldbyname('大学英语').asfloat;
sum2:=sum2+fieldbyname('高等数学').asfloat;
sum3:=sum3+fieldbyname('思想修养').asfloat;
sum4:=sum4+fieldbyname('计算机基础').asfloat;
n:=n+1;
next;
end;
if n<>0 then
begin
memo3.Lines.Strings[0]:='大学英语平均分:'+floattostr(sum1/n);
memo3.Lines.Strings[1]:='高等数学平均分:'+floattostr(sum2/n);
memo3.Lines.Strings[2]:='思想修养平均分:'+floattostr(sum3/n);
memo3.Lines.Strings[3]:='计算机基础平均分:'+floattostr(sum4/n);
end;
finally;
end;
end;
begin
memo3.Lines.Strings[0]:='大学英语平均分:'+floattostr(sum1/n);
memo3.Lines.Strings[1]:='高等数学平均分:'+floattostr(sum2/n);
memo3.Lines.Strings[2]:='思想修养平均分:'+floattostr(sum3/n);
memo3.Lines.Strings[3]:='计算机基础平均分:'+floattostr(sum4/n);
end;
改为:
memo3.Lines.Add('大学英语平均分:'+floattostr(sum1/n));
memo3.Lines.Add('高等数学平均分:'+floattostr(sum2/n));
memo3.Lines.Add('思想修养平均分:'+floattostr(sum3/n));
memo3.Lines.Add('计算机基础平均分:'+floattostr(sum4/n));
要算输入成绩的各门课程的平均分
用MEMO显示出来
谢谢你的帮忙!
你把MEMO的ScrollBars设为ssBoth
然后再把
if n<>0 then
begin
memo3.Lines.Strings[0]:='大学英语平均分:'+floattostr(sum1/n);
memo3.Lines.Strings[1]:='高等数学平均分:'+floattostr(sum2/n);
memo3.Lines.Strings[2]:='思想修养平均分:'+floattostr(sum3/n);
memo3.Lines.Strings[3]:='计算机基础平均分:'+floattostr(sum4/n);
end;
改为:
memo3.Lines.Clear;
if n<>0 then
begin
memo3.Lines.Add('大学英语平均分: '+floattostr(sum1/n));
memo3.Lines.Add('高等数学平均分: '+floattostr(sum2/n));
memo3.Lines.Add('思想修养平均分: '+floattostr(sum3/n));
memo3.Lines.Add('计算机基础平均分:'+floattostr(sum4/n));
end;这样不行吗?
用这句话;
memo3.Lines.Add('大学英语平均分:'+floattostr(sum1/n));
memo3.Lines.Add('高等数学平均分:'+floattostr(sum2/n));
memo3.Lines.Add('思想修养平均分:'+floattostr(sum3/n));
memo3.Lines.Add('计算机基础平均分:'+floattostr(sum4/n));