to_yostgxf
这个代码,错在哪里,请帮看一下:
procedure Tcysdqx_F.Button1Click(Sender: TObject);
var
mySeries: array of TFastLineSeries;
myny,myqk,str:string;
i,k,n: integer;
begin
for i:=0 to listbox1.Items.Count - 1 do myqk:=myqk+''''+','+''''+listbox1.Items;
for i:=0 to listbox4.Items.Count - 1 do myny:=myny+''''+','+''''+listbox4.Items;
str:='select qkdydm,cysd,ny from cysdb where qkdydm in('+''''+myqk+''''+') and ny in('+''''+myny+''''+') order by ny';
//str:='select qkdydm,cysd,ny from cysdb where ny in('+''''+myny+''''+') order by ny';
edit1.text:=str;
ADOQ_qkcysd.SQL.Clear;
ADOQ_qkcysd.SQL.Add(str);
ADOQ_qkcysd.open ;
if ADOQ_qkcysd.RecordCount=0 then
showmessage('所查区块或时间采油速度没计算!')
else
begin
// myseries[1].Clear ;
// myseries[2].Clear;
n := ADOQ_qkcysd.RecordCount; //现在要的个数
k := Length(mySeries); //原来的个数
if k > n then
begin
for i := k - 1 downto n do mySeries.Free;
SetLength(mySeries, n);
end else
begin
SetLength(mySeries, n);
for i := k to n-1 do
begin
mySeries := TFastLineSeries.Create(Self);
mySeries.ParentChart := Chart1;
// myseries.Clear;
end;
end;
i:=1;
while not ADOQ_qkcysd.Eof do
begin
myseries.Clear;
myseries.Add(ADOQ_qkcysd.FieldValues['cysd'],ADOQ_qkcysd.FieldValues['ny'], clTeeColor );
i:=i+1;
ADOQ_qkcysd.Next ;
end;
end;
ADOQ_qkcysd.Close ;
end;