如何在自定义TGraphicControl上拉伸两个图形彼此相邻?

时间:2009-01-21 22:57:26

标签: delphi paint

我正在编写我的Delphi TGraphicControl绘图程序。

我创建了一个画布,然后将它拉伸到图形区域。效果很好。

然后我用另一个Stretchdraw将其重复到图形区域,但它在第一个Stretchdraw的区域绘制,而不是在我指导它的图形区域。

有没有办法可以在TGraphicControl的画布中将两个stretchdraws放在一起?

1 个答案:

答案 0 :(得分:10)

TCanvas.StretchDraw在给定矩形区域的画布上绘制图形。矩形应该但不一定要在画布的范围内。画布的所有者确定了那些边界。在您的情况下,它听起来像画布所有者是TGraphicControl对象。

如果您希望将两个图形彼此相邻绘制,则用于绘制第一个图形的TRect应表示与您用于第二个图形的TRect相邻的矩形。你还没有显示任何代码,所以很难分辨出什么问题。

如果对TRect的两次调用都使用相同的StretchDraw变量,那么您需要确保修改矩形在调用之间的位置 - 更改{{ 1}}属性,适合初学者。

例如:

Left