PDA

View Full Version : تغییر اندازه عکس در picturebox



meitti
شنبه 28 شهریور 1388, 16:38 عصر
سلام
من توی دیتا بیس یه عکس ذخیره کردم حالا امودم و اونو لود میکنم اما سایز عکس من از سایز picturebox من بزرگتره ایا میشه کاری کرد که مثلا با بردن موس روی اون عکس در سایز واقعی نشون داده بشه

mahdi_7610
شنبه 28 شهریور 1388, 16:59 عصر
سلام

2 راه داری

یا باید عکس ها را با یک سایز مشخص توی بانک ذخیره کنی .

یا یه راه ساده تر اینه که با دستور زیر باعث بشی عکس فیت pictureBox بشه .


pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;

موفق باشی

Saeed.Masoumi
شنبه 28 شهریور 1388, 17:05 عصر
سلام
ببین شما یک فرم جدید بساز مثلا فرم2 بعد خاصیت FormBorderStyle رو none بزار
بعد توی ایونت Mouseover از PIctureBox این کد رو بنویس:



private void pictureBox1_MouseEnter(object sender, EventArgs e)
{
Form2 f = new Form2();
f.Size = pictureBox1.Image.Size;
f.BackgroundImage = pictureBox1.Image;
f.ShowDialog();
}


بعد در داخل ایونت MouseLeave از فرم 2 بنویس:


this.Close()

meitti
شنبه 28 شهریور 1388, 21:07 عصر
دوست عزیز اقای سعید معصومی
من کد شما رو اعمال کردم اما پیغام Out of memory. میده

Saeed.Masoumi
یک شنبه 29 شهریور 1388, 02:42 صبح
سلام
نمیدونم والا یه فایل پیوست کردم ببین:

meitti
پنج شنبه 02 مهر 1388, 09:50 صبح
با سلامی مجدد
من هر کار کردم نتونستن از پس پیغام Out of memory. بر بیام بنابراین یه کلکی به برنامه زدم
و روی فرمی که عکس نمایش داده می شد یه picturebox گذاشتم و عکس picturebox فرم اصلی رو به اون پاس کردم


private void picPhoto_MouseEnter(object sender, EventArgs e)
{
FrmShowPic frm = new FrmShowPic();
frm.Size = picPhoto.Image.Size;
frm.pictureBox1.Image = picPhoto.Image;
frm.ShowDialog();
}
;
و توی mouseleave فرم نمایش(البته picturebox اون)


private void pictureBox1_MouseLeave(object sender, EventArgs e)
{
this.Close();
}