我这里有一些代码(图片框的二维数组),用于检查属于所选索引下一行的图像是否等于 My.Resources.NONE。如果为真,它然后在两个索引之间执行图像交换。这里的问题是它永远无法正确检测到它。
If mypic(x + 1, y).Image Is My.Resources.NONE Then
mypic(x + 1, y).Image = mypic(x, y).Image
mypic(x, y).Image = My.Resources.NONE
End If
如果我删除 If 语句,它在我点击的所有图像上都可以正常工作。我的问题是,如果所选图像下方的图像具有 My.Resources.NONE 的图像值,我只希望它执行交换。知道为什么这不起作用吗?If 语句似乎永远不会是真的,即使它看起来应该是。
更新:
我停止使用 My.Resources.NONE 并开始使用“Nothing”
If mypic(x + 1, y).Image Is Nothing Then
mypic(x + 1, y).Image = mypic(x, y).Image
mypic(x, y).Image = Nothing
End If
除了 if 语句中的第一行之外,它现在可以工作了。它没有将 mypic(x + 1, y).Image 设置为 mypic(x, y).image。