PDA

View Full Version : عیب این کد چیه؟



barnamenevis300
سه شنبه 27 تیر 1391, 22:13 عصر
if (pictureBox1.Image == game.Properties.Resources.pix2)



من میخام با یه شرط مشخص کنم که عکس فعلی که در pictureBox1 هست آیا pix2 هست یا نه چرا این دستور کار نمی کنه؟


برای حل این مشکل باید چکار کنم؟

Hajivandian
سه شنبه 27 تیر 1391, 22:42 عصر
سلام،
از دستور زیر به جای اون استفاده کن

if (pictureBox1.Image.GetHashCode() == game.Properties.Resources.pix2.GetHashCode())

barnamenevis300
چهارشنبه 28 تیر 1391, 03:06 صبح
privatevoid button1_Click(object sender, EventArgs e)

{





if (this.pictureBox1.Image.GetHashCode() == game.Properties.Resources.pix.GetHashCode())

{





this.pictureBox1.Image = game.Properties.Resources.pix2;

}

}




این همه ی دستور هست ولی باز هم کار نمی کنه.

barnamenevis300
پنج شنبه 29 تیر 1391, 04:58 صبح
واقعا کسی نیست مشکل من رو متوجه شده باشه؟

ali_habibi1384
پنج شنبه 29 تیر 1391, 07:43 صبح
نميدونم اي چه كديه نوشتي اما اگر منظورت اينه كه ميخواي عكس لود كني توي ايميج يك نمونه خيلي ساده برات ميذارم:


private void button1_Click(object sender, EventArgs e)
{
OpenFileDialog dlg = new OpenFileDialog();

dlg.Title = "Open Image";
dlg.Filter = "bmp files (*.bmp)|*.bmp";

if (dlg.ShowDialog() == DialogResult.OK)
{
PictureBox PictureBox1 = new PictureBox();
PictureBox1.Image(dlg.FileName);
}

dlg.Dispose();
}

Y_Safaiee
پنج شنبه 29 تیر 1391, 08:14 صبح
با سلام خدمت شما دوست عزیزم

برای بررسی اینکه آیا عکس مورد نظر همون عکس قبلیه یا عکس جدیدیه راه های محتلفی هست مثلا :

1.طول عکس رو با هم مقایسه کرد منظورم ایه که عکس ها رو به آرایه بایتی تبدیل و سپس طول این آرایه ها رو با هم مقایسه کنید.(1 در 1000 إ که تو عکس یه سایز یکتا داشته باشن)
2.میتونین پیکسل به پیکسل عکس ها رو با هم مقایسه کنید
3.همونطور که دوستانم گفتن خروجی Hash رو با هم مقایسه کنید.

مثلا به این سایت مراجعه کنید :


http://www.c-sharpcorner.com/uploadfile/prathore/image-comparison-using-C-Sharp/


کل کد مقایسه 5 خطه که برای تسریع در انجام این مقایسه میتونین از BackgroundWorker استفاده کنید

یا مثلا این سایت که با استفاده از HashCode این کارو انجام میده :


http://www.dreamincode.net/code/snippet2859.htm



راههای زیادی وجود داره اما بسته به میزان حساسیت و مهم بودن موضوع الگوریتم فرق میکنه

موفق باشین
بایت بایت

barnamenevis300
پنج شنبه 29 تیر 1391, 08:55 صبح
دوستان گرامی لطفا سوال بنده رو از اول بخونید! استفاده از getHash رو اولین دوستی که جواب داد پیشنهاد داد. سوال من توی پست اول هست.