-1

这是我的一些代码。

drawingContext.DrawEllipse(this.handOpenBrush, null, handPosition, HandSize, HandSize);

该代码工作正常。

虽然,一旦我这样做,我就会得到它有一些无效参数的错误。

drawingContext.DrawEllipse(this.handOpenBrush, null, (handPosition.Offset(20,20)), HandSize, HandSize);

我所做的只是将 handPosition 点偏移 (20,20)。我看不出我能做些什么来导致程序突然出现参数错误。

4

2 回答 2

2

Point.Offset不会返回新点 - 它会改变现有的Point. 所以你需要在调用之前DrawEllipse改变点:

handPosition.Offset(20,20);
drawingContext.DrawEllipse(this.handOpenBrush, null, handPosition, HandSize, HandSize);

或使用确实返回新的方法Point

drawingContext.DrawEllipse(this.handOpenBrush, null, Point.Add(handPosition, new Vector(20,20)), HandSize, HandSize);
于 2014-10-02T21:56:48.913 回答
0

handPosition是一个Point

Point.Offset()是返回 void 的方法,而不是 a Point,因此参数无效。

相反,在调用handPosition.Offset(20,20)之前drawingContext.DrawEllipse()调用,然后您仍然可以handPosition作为第三个参数传入。

于 2014-10-02T21:55:32.100 回答