不完全确定如何将标题写成这样的东西,但基本上,我有一个图片框,代表图像的放大版本,我通过笔在框上绘制网格。在网格中的每个框之间有8个像素。当我将鼠标移到图片框上时,我有一个标签,上面写着它的e.x和e.y,所以它读回我移动鼠标的实际像素。但我想要它做的是将它计算为网格中每个框的一个像素。因此,每个8x8像素读取的值为1.我认为可以使用for循环完成,但我不知道如何解决这个问题。有任何想法吗?谢谢。 这些框用于表示放大图像的每个像素,因此如果图片框实际上是256像素宽,则其表示的图像实际上是32像素宽。
答案 0 :(得分:0)
您可以使用整数除法将X和Y值除以8。
Private Sub PictureBox1_MouseMove(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseMove
Console.WriteLine(String.Format("X: {0}, Y: {1}", (e.X \ 8) + 1, (e.Y \ 8) + 1))
End Sub