获取鼠标移动坐标并将它们除以32时出错(Math.Floor)

ora*_*313 0 .net c#

private void Form1_MouseMove(object sender, MouseEventArgs e)
{
    //Create Graphics
    Graphics g = this.CreateGraphics();

    mx = Math.Floor(e.X / 32);
    my = Math.Floor(e.Y / 32);
}
Run Code Online (Sandbox Code Playgroud)

Floorin mxmy(mx和我都是整数)下得到一个错误

错误:严重级代码描述项目文件行抑制状态错误CS0121以下方法或属性之间的调用不明确:'Math.Floor(十进制)'和'Math.Floor(double)'GameAttempt3 c:\ users\levyjrdesktop\documents\visual studio 2015\Projects\GameAttempt3\GameAttempt3\Form1.cs 95 Active

Sal*_*ari 6

Floor方法(Double,Decimal)有两个重载:

public static decimal Floor(decimal d);
public static double Floor(double d);
Run Code Online (Sandbox Code Playgroud)

所以你需要施放:

mx = Math.Floor((double)e.X / 32);
my = Math.Floor((double)e.Y / 32);
Run Code Online (Sandbox Code Playgroud)