5,390
社区成员
发帖
与我相关
我的任务
分享
procedure TForm15.cht1AfterDraw(Sender: TObject);
var
nCounter : integer;
begin
if Series1.XValues.Count < 4 then
exit;
nCounter := Series1.CalcXPos(2);
cht1.Canvas.Pen.Color := clRed;
cht1.Canvas.MoveTo(nCounter, Series1.CalcYPosValue(536));
cht1.Canvas.LineTo(nCounter, Series1.CalcYPosValue(504));
nCounter := Series1.CalcXPos(3);
cht1.Canvas.Pen.Color := clGreen;
cht1.Canvas.MoveTo(nCounter, Series1.CalcYPosValue(Series1.MinYValue));
cht1.Canvas.LineTo(nCounter, Series1.CalcYPosValue(Series1.MaxYValue));
end;
private
const XPos = 87;
private
FRatio : Double;
procedure TForm15.FormCreate(Sender: TObject);
begin
//确定比例, 利用该比例计算X值
FRatio := XPos / cht1.Width;
end;
procedure TForm15.cht1AfterDraw(Sender: TObject);
var
XLine : integer;
begin
XLine := Round(cht1.Width * FRatio);
cht1.Canvas.MoveTo(XLine, 32);
cht1.Canvas.LineTo(XLine, -48+cht1.Height);
end;