Delphi 带LineDDA的椭圆点
我可以使用GDI画布椭圆绘制夹点,但第二个点绘制错误。如何防止显示的效果Delphi 带LineDDA的椭圆点,delphi,Delphi,我可以使用GDI画布椭圆绘制夹点,但第二个点绘制错误。如何防止显示的效果 procedure TFormMain.DrawMarchingAnts; var iWidth: integer; begin AMarchingAntsCounter := AMarchingAntsCounterStart; // Use LineDDA to draw each of the 4 edges of the rectangle LineDDA(AMarchingAntsPointA.X
procedure TFormMain.DrawMarchingAnts;
var
iWidth: integer;
begin
AMarchingAntsCounter := AMarchingAntsCounterStart;
// Use LineDDA to draw each of the 4 edges of the rectangle
LineDDA(AMarchingAntsPointA.X, AMarchingAntsPointA.Y, AMarchingAntsPointB.X, AMarchingAntsPointA.Y,
@MarchingAnts, LongInt(
AMarchingAntsCanvas));
LineDDA(AMarchingAntsPointB.X, AMarchingAntsPointA.Y, AMarchingAntsPointB.X, AMarchingAntsPointB.Y,
@MarchingAnts, LongInt(
AMarchingAntsCanvas));
LineDDA(AMarchingAntsPointB.X, AMarchingAntsPointB.Y, AMarchingAntsPointA.X, AMarchingAntsPointB.Y,
@MarchingAnts, LongInt(
AMarchingAntsCanvas));
LineDDA(AMarchingAntsPointA.X, AMarchingAntsPointB.Y, AMarchingAntsPointA.X, AMarchingAntsPointA.Y,
@MarchingAnts, LongInt(
AMarchingAntsCanvas));
if AMarchingAntsPointB.X > AMarchingAntsPointA.X then
ARubberbandVisible := True
else
ARubberbandVisible := False;
AMarchingAntsCanvas.Pen.Width := 1;
AMarchingAntsCanvas.Pen.Color := clWhite;
AMarchingAntsCanvas.Brush.Color := clRed;
AMarchingAntsCanvas.Ellipse(AMarchingAntsPointA.X-4, AMarchingAntsPointA.Y-4, AMarchingAntsPointA.X+4, AMarchingAntsPointA.Y+4);
iWidth := AMarchingAntsPointB.X - AMarchingAntsPointA.X;
AMarchingAntsCanvas.Ellipse(AMarchingAntsPointA.X-4 + iWidth, AMarchingAntsPointA.Y-4, AMarchingAntsPointA.X+4 + iWidth, AMarchingAntsPointA.Y+4);
end;
相关问题:我如何实现所示效果?@Sertac-可以回答您自己的问题吗?我解决了刷新问题。@Bill-当然,请这样做。不过,你可能需要等待一段时间才能接受你的答案。