با سلام دوستان ميخام يه فرم باشه يه باتن روش باشه كه با ردن هر يك باربرروي باتن عكس زمينه فرم تغيير كنه و اين عكس ها را از يه فولدر خاص بگيره به صورت تصادفي كسي ميتونه كمكم كنه؟؟
با سلام دوستان ميخام يه فرم باشه يه باتن روش باشه كه با ردن هر يك باربرروي باتن عكس زمينه فرم تغيير كنه و اين عكس ها را از يه فولدر خاص بگيره به صورت تصادفي كسي ميتونه كمكم كنه؟؟
واقعا هيچ كدام از مهندسين اين كارا بلد نيستن انجام بدن؟؟؟؟؟؟
سلام دوست عزیز
خسته نباشید
ببینید شما میتونید برای عوض کردن عکس فرم به صورت زیر عمل بکنید :
///برای وارد کردن عکس از طریق کد شما باید از طریق کلاس ایمیج عمل بکنید..
///ینی باید یک شئی از کلاس ایمیج ایجاد بکیند به شکل زیر
Image [YourNamePic] = Image.FromFile(AddresFile)
///خب در این دستور من از کلاس ایمیج یه متغیر ساختم که از طریق سازنده پیش فرضش بهش یک آدرس عکس میدم
///وحالا میگم اون عکس مقدارش برابر باشه با عکس پس زمینه فرم
/// this.BackgroundImage = [YourNameImage]
///عکس پس زمینه فرم بدین شکل عوض میشه
حالا شما سوال کردی که به صورت تصادفی بره از یک فایل که توش چند عکس وجود داره... میتونید از این روش برید :
///دادن آدرس مسیر عکس ها
string folderName = @"D:\Picutre\Programmer"
///این کلاس دایرکتوری
///برای مسیر دادن و رفتن و ... هست
DirectoryInfo Folder
///وکلاس پایینی برای یک آرایه هست که برای گرفتن اطلاعات
///یک پوشه به کار میره
FileInfo[] Images
///این دستور یک مسیر به اون کلاس
///دایرکتوری اینفو میده
///تا بره اطلاعات درون اون رو بخونه
Folder = new DirectoryInfo(folderName)
///وبعد بهش میگم اون آرایه فایل ابنفو
///مقدارش بشه برابر با اون فولدر
///متد گت فایل که همونطور بهتون گفتم این کلاس متد هایی برای
///گرفتن اجزای درون یک پوشه رو داره
///و به شما به صورت یک مجموعه یا آرایه برمیگردونه
Images = Folder.GetFiles()
///این لیست برای اد زدن
///مسیر اون عکس ها میباشد
List<String> imagesList = new List<String>();
for (int i = 0; i < Images.Length; i++)
{
///حالا بش میگم اون لیست
///رو اد بزن اون پوشه
///به همراه اون آرایه عکس
///اندیس به اندیس
imagesList.Add(String.Format(@"{0}/{1}", folderName, Images[i].Name));
// Console.WriteLine(String.Format(@"{0}/{1}", folderName, Images[i].Name));
}
///بعد با یک رندوم راحت کار رو یک سره میکنم
Random Rn = new Random()
int T = Rn.Next(0, imagesList.Count)
this.BackgroundImage = Image.FromFile(imagesList[T])
امید وارم کارتون راه بیفته دوست عزیز
سلام دوست عزیز
خسته نباشید
ببینید شما میتونید برای عوض کردن عکس فرم به صورت زیر عمل بکنید :
///برای وارد کردن عکس از طریق کد شما باید از طریق کلاس ایمیج عمل بکنید..
///ینی باید یک شئی از کلاس ایمیج ایجاد بکیند به شکل زیر
Image [YourNamePic] = Image.FromFile(AddresFile)
///خب در این دستور من از کلاس ایمیج یه متغیر ساختم که از طریق سازنده پیش فرضش بهش یک آدرس عکس میدم
///وحالا میگم اون عکس مقدارش برابر باشه با عکس پس زمینه فرم
/// this.BackgroundImage = [YourNameImage]
///عکس پس زمینه فرم بدین شکل عوض میشه
حالا شما سوال کردی که به صورت تصادفی بره از یک فایل که توش چند عکس وجود داره... میتونید از این روش برید :
///دادن آدرس مسیر عکس ها
string folderName = @"D:\Picutre\Programmer"
///این کلاس دایرکتوری اینفو
///برای مسیر دادن و رفتن و ... هست
///در واقع به شما اطلاعات اون پوشه رو میده مثل نام و حجمش و..
DirectoryInfo Folder
///وکلاس پایینی برای یک آرایه هست که برای گرفتن اطلاعات
///یک پوشه به کار میره
FileInfo[] Images
///این دستور یک مسیر به اون کلاس
///دایرکتوری اینفو میده
///تا بره اطلاعات درون اون رو بخونه
Folder = new DirectoryInfo(folderName)
///وبعد بهش میگم اون آرایه فایل ابنفو
///مقدارش بشه برابر با اون فولدر
///متد گت فایل که همونطور بهتون گفتم این کلاس متد هایی برای
///گرفتن اجزای درون یک پوشه رو داره
///و به شما به صورت یک مجموعه یا آرایه برمیگردونه
Images = Folder.GetFiles()
///این لیست برای اد زدن
///مسیر اون عکس ها میباشد
List<String> imagesList = new List<String>();
for (int i = 0; i < Images.Length; i++)
{
///حالا بش میگم اون لیست
///رو اد بزن اون پوشه
///به همراه اون آرایه عکس
///اندیس به اندیس
imagesList.Add(String.Format(@"{0}/{1}", folderName, Images[i].Name));
// Console.WriteLine(String.Format(@"{0}/{1}", folderName, Images[i].Name));
}
///بعد با یک رندوم راحت کار رو یک سره میکنم
Random Rn = new Random()
int T = Rn.Next(0, imagesList.Count)
this.BackgroundImage = Image.FromFile(imagesList[T])
امید وارم کارتون راه بیفته دوست عزیز
البته اینجا بخش اکسس هست و کدنویسی با VBA انجام میشه و نه C
ولی دوستمون پرسیده که در فرم سی شارپ
سلام ممنونم از لطفت منظورم همون اکسس بود
درود برشما ممنونم از لطفتون من براي همون vb ميخاستم نه سي شارپ
خب روش آقای زمانی درست هست و پرسش شما در واقع از چند بخش کوچکتر تشکیل شده:
1- خوندن لیست فایلهای یک فولدر و ریختن اونها در یک چیزی (مثلا یک آرایه)
2- ساخت یک عدد صحیح رندوم (برای انتخاب ایندکس آرایه) - احتمالا با شرط غیر تکراری بودن
3- انتساب picture یک image control رو بر اساس ایندکس آرایه
شما در کدوم بخش مشکل دارین؟