检查2个按钮是否具有相同的背景图像

时间:2018-03-10 17:32:17

标签: c#

C# - Windows窗体应用程序 我有一些按钮BackgroundImage的麻烦。 我想检查2个按钮是否具有相同的背景图像,我试试这个:

if (button1.BackgroundImage == button2.BackgroundImage)
            MessageBox.Show("works!");

但无效。

如何检查2个按钮是否具有相同的背景图像?

2 个答案:

答案 0 :(得分:0)

试试这个

if(button1.Image == button2.Image)
{
   MessageBox.Show("Works");
}

答案 1 :(得分:0)

那么,试试这个

private bool ImageCompareArray(Bitmap firstImage, Bitmap secondImage)
        {
            bool flag = true;
            string firstPixel;
            string secondPixel;

            if (firstImage.Width == secondImage.Width 
                && firstImage.Height == secondImage.Height)
            {
                for (int i = 0; i<firstImage.Width; i++)
                {
                    for (int j = 0; j<firstImage.Height; j++)
                    {
                   firstPixel = firstImage.GetPixel(i, j).ToString();
                   secondPixel = secondImage.GetPixel(i, j).ToString();
                   if (firstPixel != secondPixel)
                   {
                       flag = false;
                       break;
                   }
               }
           }

           if (flag == false)
           {
               return false;
           }
           else
           {
               return true;
           }
       }
       else
       {
           return false;
       }
   }

使用

private void Form2_Load(object sender, EventArgs e)
        {
            if(ImageCompareArray((Bitmap)button1.BackgroundImage, (Bitmap)button2.BackgroundImage))
            {
                MessageBox.Show("Yes");
            }
            else
            {
                MessageBox.Show("No");
            }
        }
相关问题