我正在阅读一个三维聚会Delphi源,并停留在一行,其中Rect用另一个Rect的坐标初始化,但被交换,如下所示:
r, rsrc: TRect;
...
r := Rect(rsrc.right + 1, rsrc.bottom + 1, rsrc.left, rsrc.top);
rsrc
填充了适当的屏幕坐标,因此(左,上)总是小于(右,下)。
这是什么意思?我在Delphi文档中找不到任何可能的目的。
严格来说,TRect
只是四个整数的集合。这些数字的含义完全取决于上下文。通常,它们指定一个矩形。
也就是说,期望Delphi文档对当前问题做任何说明都是没有意义的!这就像看到一辆汽车在小路上掉头,然后问:"为什么汽车手册没有解释为什么有人会在这条特定的路上掉头?"
它没有任何意义,就像SomeVarName := 7
本身没有任何意义一样。深入查看代码,看看r
应该用于什么;还要了解rsrc
是如何获得的。
可能只是rsrc
的坐标是使用一些数学方法获得的,并且确定得到的矩形是上下的,因此代码将矩形旋转为上下。