语法上有些毛病,先改了再调
if FCurrentChart <> nil then
begin
wid := FCurrentChart.Width;
hei := FCurrentChart.Height;
lef := FCurrentChart.Left;
top := FCurrentChart.Top;
FCurrentChart.BringToFront;
FCurrentChart.Width := 400;
FCurrentChart.Height := 350;
FCurrentChart.Left := 180;
FCurrentChart.Top := 90;
end
。。。。。。。
procedure TForm1.Button2Click(Sender: TObject);
begin
if FCurrentChart <> nil then
begin
FCurrentChart.Width := wid;
FCurrentChart.Height := hei;
FCurrentChart.Left := lef;
FCurrentChart.Top := top;
end
end;
按照wudi的方法,我写的代码如下:
var
Form1: TForm1;
wid,hei,lef,top: integer;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
if FCurrentChart <> nil then
wid := FCurrentChart.Width;
hei := FCurrentChart.Height;
lef := FCurrentChart.Left;
top := FCurrentChart.Top;
FCurrentChart.BringToFront;
FCurrentChart.Width := 400;
FCurrentChart.Height := 350;
FCurrentChart.Left := 180;
FCurrentChart.Top := 90;
end;
procedure TForm1.ChartClick(Sender: TObject);
begin
if Sender is TChart then
FCurrentChart := Sender as TChart;
end;
procedure TForm1.FormCreate(Sender: TObject);
var
Idx: Integer;
a,b:integer;
begin
for Idx := 0 to Pred(ComponentCount) do
if Components[Idx] is TChart then
(Components[Idx] as TChart).OnClick := ChartClick;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
if FCurrentChart <> nil then
FCurrentChart.Width := wid;
FCurrentChart.Height := hei;
FCurrentChart.Left := lef;
FCurrentChart.Top := top;
end;
结果运行的时候,一点击button1不光是chart移动,窗体也跟着往下移动,如果chart在窗体的下面的话,点击button1后,窗体居然也跟着跑到电脑屏幕的下半截去了,这是怎么回事呀?请帮忙看看改改,谢谢!