PDA

View Full Version : سوال: انتخاب عکسی که اندازه PICTUREBOX می شود؟



morteza_1234m
پنج شنبه 03 اردیبهشت 1388, 13:12 عصر
دوستان من به دو روش می تونم تو پروژم عکس کاربر دریافت و درون PICTUREBOX ذخیره کنم
دو تا مشکل دارم
1- برای قسمتی که کاربر می خواهد عکس را از روی حافظه انتخاب کند من چگونه می تونم به وسیله OpenDialog این کار رو بکنم
2- من توسط اسکنر که عکس رو درون picturebox می گذارم هر کاری که می کنم اندازه کادر picturebox من نمی شود چه کار کنم ؟

seven7777777
پنج شنبه 03 اردیبهشت 1388, 14:10 عصر
جواب سوال اولت :


OpenFileDialog setpic = newOpenFileDialog();
setpic.Title = "انتخاب تصویر";
setpic.Filter = "All files (*.*)|*.*|JPEG files (*.jpg)|*.jpg|GIF files (*.gif)|*.gif|" +
"PNG files (*.png)|*.png|BMP files (*.bmp)|*.bmp";
if (setpic.ShowDialog() == DialogResult.OK)
{
Indgrp_picpb.Image = Image.FromFile(setpic.FileName);
}


و جواب سوال دومت اگه درست متوجه شده باشم ، در خاصیت SizeMode همون PictureBox است که باید StretchImage انتخاب کنی .

morteza_1234m
پنج شنبه 03 اردیبهشت 1388, 21:31 عصر
دوست عزیز من در مورد قسمت دوم سئوالم همین کار شما رو می کنم ولی تغییری نمی کنه میشه کمک کنید
در ضمن من خودم ار شی Openfile dialg استفاده کردم نه کلا سش اگه میشه یک نمونه برای شی مربوط به این را بذارید

saeed-kh
پنج شنبه 03 اردیبهشت 1388, 23:44 عصر
فکر میکنم که برای pictureboxفقط واسه backgroundمیتونیم خاصیت stretchویا zoom و...رو انتخاب کنیم نه واسه خاصیت picturebox.image
مثلا من تو برنامم خواستم که عکسها رو توی یک کنترلflowLayoutPanelنشون بدم. واسه هر کدوم یک Pictureboxساختم و ادامه رو تو کد ببین.همه عکسا با هر سایزی رو نشون داد.مشکلی نداشتم.البته کد اضافی هم داشت که من همه رو گذاشتم.

PictureBox Pic = new PictureBox();
Pic.Size = new System.Drawing.Size(100, 100);
Pic.Cursor = System.Windows.Forms.Cursors.Hand;
Pic.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
Pic.BackgroundImageLayout=System.Windows.Forms.Ima geLayout.Zoom;
Pic.BackgroundImage = System.Drawing.Image.FromFile(str);
flowLayoutPanel1.Controls.Add(Pic);

seven7777777
جمعه 04 اردیبهشت 1388, 11:14 صبح
خوب منم از کلاسش یه شی ساختم و استفاده کردم .
حالا مشکلت کجاش بود ؟ کد کار نکرد یا نمی خواستی کد قبلیتو خراب کنی ؟؟؟
===============================
به هر حال شما چه عکسی رو در خاصیت Background بذاری و چه در Image در هر دو حالت می تونی عکس رو Stretch کنی تا هم اندازه PictureBox بشه .

morteza_1234m
دوشنبه 21 اردیبهشت 1388, 12:03 عصر
نه دوست عزیز من کار کردن و دیباگ کردن اینجوری برام یک خورده مشکله و زیاد ازشون سر در نمیارم چون ولی اونجوری چرا برای همین مایل به استفاده از خود شی هستم تا این که شی را بسازم

mohsen_csharp
دوشنبه 21 اردیبهشت 1388, 13:04 عصر
نه دوست عزیز من کار کردن و دیباگ کردن اینجوری برام یک خورده مشکله و زیاد ازشون سر در نمیارم چون ولی اونجوری چرا برای همین مایل به استفاده از خود شی هستم تا این که شی را بسازم
کاربر گرامی شما در هر دو صورت یک شی از این کلاس میسازی.
اگه این کنترل رو روی فرم بکشی یک شی از اون ساخته میشه.
در ضمن ما چیزی به نام "خود شی" نداریم.

morteza_1234m
پنج شنبه 24 اردیبهشت 1388, 16:12 عصر
کاربر گرامی شما در هر دو صورت یک شی از این کلاس میسازی.
اگه این کنترل رو روی فرم بکشی یک شی از اون ساخته میشه.
در ضمن ما چیزی به نام "خود شی" نداریم.
نه دوست عزیز منظورم شی Picturebox ای بود که ،Toolbox موجود می باشد اون کلمه رو تحت لفظی به کار بردم
در ضمن مشکلم با کد بالا که یکی از دوستان گذاشته بود حل شد ولی مشکلی که دارم الان داخل ذخیره کردن عکس می باشد چون من یک دکمه روی فرم دارم که برای "ورود عکس" به داخل
flowlayout1 هست و یک دکمه برای ذخیره همه اطلاعات موجود در فرم مشکلم اینجاست که نمی تونم از کدی که دوستان برای ذخیره عکس در بانک SQL گذاشتن استفاده کنم.