我已经在C++中使用SFML三个月了,最近决定过渡到C#。我在项目中引用了 dll,将 CSFML dll 添加到我的项目中,并将 using 语句添加到代码顶部。但是,我得到了下面发布的错误:
shape.setFillColor(fillColor);
我的问题是什么?
错误:错误 CS1061:"SFML。Graphics.CircleShape"不包含"setFillColor"的定义,也没有扩展方法"setFillColor"接受类型为"SFML"的第一个参数。可以找到Graphics.CircleShape'(您是否缺少使用指令或程序集引用?
代码:http://pastie.org/private/eujxnxorisb4ajtp22ovng
查看代码 SFML.NET 代码,CircleShape
继承自将此方法包装到属性中的Shape
:
// SFML.Graphics.Shape
public Color FillColor
{
get
{
return Shape.sfShape_getFillColor(base.CPointer);
}
set
{
Shape.sfShape_setFillColor(base.CPointer, value);
}
}
因此,您只需调用:
shape.FillColor = ...