C#中怎么比较picturebox的image与imagelist的image[0]是否为同一幅图像

eg:pic.image==imagelist.image[0]???Ps:不能占用太多CPU时间。
2025-03-10 07:08:56
推荐回答(1个)
回答1:

pic.image==imagelist.image[0]是在比较图像引用是否相同。
我建议有两个做法:
1.当给picturebox和imagelist设置图像时。给他们都设置一个tag,该tag标示图像地址(如果有的话)。然后比较pic.Tag==imagelist.image[0].Tag
2.逐个像素比较两个图片。我记得C#中有lockBytes系列的方法,适用于底层图像处理。
不过即使是底层处理,因为是实际比较像素,肯定效率不是很高