PDA

View Full Version : تغییر عکس background فرم در زمان اجرا



ali_autumnal
شنبه 21 شهریور 1388, 12:36 عصر
با سلام

کدی میخوام که زمان اجرا بشه عکس بکگراند فرم رو عوض کنه.

متشکر

mahdi_7610
شنبه 21 شهریور 1388, 13:14 عصر
سلام



if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
BackgroundImage = Image.FromFile(openFileDialog1.FileName);
}

ali_autumnal
شنبه 21 شهریور 1388, 13:20 عصر
سلام



if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
BackgroundImage = Image.FromFile(openFileDialog1.FileName);
}



دوست خوب. من نمیخوام که کاربر عکس بده و یا با انتخاب خودش تغییر بده. من میخوام مثلا وقتی کاربر روی فرم کلیک کرد عکس بکگراند عوض بشه. یعنی عکس تو پروژه باشه و یکی از اون عکس ها توسط کدی که نوشته شده انتخاب بشه.

mahdi_7610
شنبه 28 شهریور 1388, 12:40 عصر
دوست خوب. من نمیخوام که کاربر عکس بده و یا با انتخاب خودش تغییر بده. من میخوام مثلا وقتی کاربر روی فرم کلیک کرد عکس بکگراند عوض بشه. یعنی عکس تو پروژه باشه و یکی از اون عکس ها توسط کدی که نوشته شده انتخاب بشه.

سلام

بفرمائید !!

mahdi_7610
شنبه 28 شهریور 1388, 13:25 عصر
اگه میخوای حتما با زدن یک دکمه یکی یکی عکسها را نشون بدی یک button و یک PictureBox توی فرم بزار و دستور زیر را هم به رویداد click دکمه اختصاص بده

عکسهایی هم که میخوای پشت سر هم نشون داده بشن را با نام های 0.jpg و 1.jpg و 2.jpg و ... توی پوشه Debug بزار


int i = 0;
private void button1_Click(object sender, EventArgs e)
{

pictureBox1.Image = Image.FromFile(i + ".jpg");
i++;
}

موفق باشی

ali_autumnal
شنبه 28 شهریور 1388, 22:00 عصر
حتما باید تو Debug باشه؟

نمیشه کاربر تو هر جایی که خواست با هر نام فولدری که دوست داره قرار بده؟

فایل اجرایی از اونجا بخونه.

مثلا تو ASP.net می نویسیم:



pictureBox1.imageurl="~/images/01.jpje


من میخوام اینطوری آدرس دهی کنم. تا اول هم برنامه نویس دستش باز باشه و راحت آدرس بده و هم کاربر براحتی هرجایی که برنامه فوق رو نصب کرد برنامه بدون مشکل اجرا بشه. یا بقولی برنامه فقط در فولدر فلان و در درایو فلان اجرا نشه.

متشکر میشم راهنمایی کنید

Saeed.Masoumi
یک شنبه 29 شهریور 1388, 01:53 صبح
سلام
یه سوال:چرا از ImageList استفاده نمی کنی؟:متفکر:
اول تنظیمش کن بعد عکساتو توش اد کن بعد توی TimerTick بنویس:



public Form1 f=new Form1();
//Timer Tick here
f.BackgroundImage=ImageList1[i];
i++;

ali_autumnal
یک شنبه 29 شهریور 1388, 20:54 عصر
متشکر از راهنماییتون.

فقط آیا تو این روش محدودیت نام فولدر بنام Debug که نداریم؟

mahdi_7610
یک شنبه 29 شهریور 1388, 21:28 عصر
متشکر از راهنماییتون.

فقط آیا تو این روش محدودیت نام فولدر بنام Debug که نداریم؟

اگه به نمونه ای که توی پست 4 گذاشتم نگاه کنی از ImageList استفاده کردم .

توی این حالت عکس ها داخل ImageList قرار میگیرن . و هر جا که خواستی میتونی برنامه را بزاری . بدون مشکل اجرا مشیه . به خاطر این که عکسها به برنامه الحاق شده .

ولی یه مشکلی داره و اون هم اینه که فقط عکسهایی که به برنامه دادید نشون داده میشن . مثلا اگه فقط فایل exe را به کاربر بدید به هیچ عنوان نمیتونه عکسی که خودش میخواد نشون داده بشه . بلکه فقط عکسهایی که شما دادید نشون داده میشن .

به نمونه برنامه ای که توی پست 4 گذاشتم نگاه کنید .

ali_autumnal
دوشنبه 30 شهریور 1388, 12:14 عصر
متشکرم



به نمونه برنامه ای که توی پست 4 گذاشتم نگاه کنید .
من اونو دانلود کردم و چک کردم. به این جهت گفتم که محدودیت نام فولدر داره...

در ضمن متشکرم بااین روش مشکلم حل شد.

sd.CSharpProgrammer
دوشنبه 30 شهریور 1388, 21:58 عصر
سلام دوست عزيز

اگه عكست رو به پروژه اضافه كردي ميتوني با اين دستور بهش دسترسي داشته باشي :
this.BackgroundImage = global::WindowsApplication1.Properties.Resources.S amplePicture;

تو دستور بالا بجاي WindowsApplication1 اسم پروژه ات و بجاي SamplePicture اسم عكست رو بنويس. البته IntelliSense كارت رو راحت مي كنه. در ضمن دستور بالا رو تو رويداد كليك فرمت بنويس چون ميخواي با كليك كاربر روي فرم عكس بخصوصي رو بكگراند فرم تنظيم بشه.


موفق باشي

ehsan71t
شنبه 06 خرداد 1396, 21:30 عصر
سلام خسته نباشید میخواستم بدونم باچه کدی میشه تصویر بک گراند فرم رو هنگام اجرای برنامه عوض کرد ممنون میشم اگه جواب بدید