很奇怪,在Button1Click里創建DX,在Button2Click里顯示就會出錯,這時候Surface是nil。但是如果把Button1Click的代碼放在FormCreate或者FormShow你就可以顯示,Surface分配成功。是什么原因?有沒有在Button1里創建成功的辦法?謝謝!procedure TForm1.Button1Click(Sender: TObject);
begin
DX:=TDXDraw.Create(self);
DX.Parent:=Self;
DX.Width:=200;DX.Height:=200;
DX.Visible:=True;
IL.DXDraw:=DX;
end;procedure TForm1.Button2Click(Sender: TObject);
begin
DX.Surface.Fill(0);
IL.Items[0].Draw(DX.surface,0,0,0);
DX.Surface.Canvas.Release;//............這里出錯
DX.Flip;
end;
begin
DX:=TDXDraw.Create(self);
DX.Parent:=Self;
DX.Width:=200;DX.Height:=200;
DX.Visible:=True;
IL.DXDraw:=DX;
end;procedure TForm1.Button2Click(Sender: TObject);
begin
DX.Surface.Fill(0);
IL.Items[0].Draw(DX.surface,0,0,0);
DX.Surface.Canvas.Release;//............這里出錯
DX.Flip;
end;
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货