PDA

View Full Version : سوال: حرکت روی عکس های یک پوشه



god of war 313
دوشنبه 07 آذر 1401, 06:00 صبح
با سلام خدمت دوستان.

عنوانم رو خوب نتونستم مطرح کنم.

من یک برنامه نمایش دهنده عکس نوشتم . وقتی عکس با برنامه من باز میشه برنامه کل عکس های اون پوشه رو میگیره و با دوتا دکمه بعدی یا قبلی میره.

میخواستم بدونم کد حرکت چجوریه؟

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

ROSTAM2
دوشنبه 07 آذر 1401, 07:31 صبح
سلام.
لا اقل کدی که گفتی رو ارسال می کردی!

god of war 313
دوشنبه 07 آذر 1401, 14:47 عصر
سلام.
لا اقل کدی که گفتی رو ارسال می کردی!

شرمنده

Photo Viewer (https://s25.picofile.com/file/8456241500/Photo_Viewer.rar.html)

ROSTAM2
سه شنبه 08 آذر 1401, 19:32 عصر
سلام.

چی بود این پروژه ناسا بود؟! :متفکر:

برای اضافه کردن تصاویر به کالکشن:


private void Form1_Load(object sender, EventArgs e)
{
string path = @"F:\Code Library Icons";
//string folder = Path.GetDirectoryName(path);
string[] Files = Directory.GetFiles(path, "*.png");
this.AllImages.AddRange(Files);
Files = Directory.GetFiles(path, "*.jpg");
this.AllImages.AddRange(Files);
this.ImageCounter = -1;
btnNext_Click(sender, e);
{



NextButton Statment:


private void btnNext_Click(object sender, EventArgs e)
{

if (this.ImageCounter < this.AllImages.Count - 1)
{
this.ImageCounter++;
this.pictureBox1.Image = Image.FromFile(this.AllImages[this.ImageCounter]);
}
this.Previousbutton.Enabled = (bool)(this.ImageCounter > 0);
this.Nextbutton.Enabled = (bool)(this.ImageCounter < this.AllImages.Count - 1);
}



PreviousButton Statment:


private void btnBack_Click(object sender, EventArgs e)
{

if (this.ImageCounter > 0)
{
this.ImageCounter--;
this.pictureBox1.Image = Image.FromFile(this.AllImages[this.ImageCounter]);
}
this.Previousbutton.Enabled = (bool)(this.ImageCounter > 0);
this.Nextbutton.Enabled = (bool)(this.ImageCounter < this.AllImages.Count - 1);
}


154296

ROSTAM2
چهارشنبه 09 آذر 1401, 07:33 صبح
سلام دوباره.
برای بدست آوردن Index تصویر انتخاب شده طبق آدرس از لیست آدرس ها از تابع IndexOf استفاده کنید.
154298 (https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.list-1.indexof?view=net-7.0)

(https://www.c-sharpcorner.com/UploadFile/mahesh/how-to-get-index-of-an-item-in-a-C-Sharp-list/#:~:text=The%20IndexOf%20method%20returns%20the,Li st%20is%20a%20generic%20class.)

god of war 313
چهارشنبه 09 آذر 1401, 13:56 عصر
سلام برادر ممنون.

ghasem31372
چهارشنبه 09 آذر 1401, 19:33 عصر
سلام بر دوستان .

من هم یک برنامه همین شکلی نوشتم فقط یکم ناقصه

میخوام بدونم چطوری هر بار که عکس عوض بشه اسم اون عکس هم نکایش داده بشه؟

ROSTAM2
چهارشنبه 09 آذر 1401, 20:38 عصر
سلام بر دوستان .

من هم یک برنامه همین شکلی نوشتم فقط یکم ناقصه

میخوام بدونم چطوری هر بار که عکس عوض بشه اسم اون عکس هم نکایش داده بشه؟

با تابع GetFileName از کلاس Path از System.IO:

string fileName = @"C:\mydir\myfile.ext";
string path = @"C:\mydir";
string result;


result = Path.GetFileName(fileName);
Console.WriteLine("GetFileName('{0}') returns '{1}'",
fileName, result);


result = Path.GetFileName(path);
Console.WriteLine("GetFileName('{0}') returns '{1}'",
path, result);


// This code produces output similar to the following:
//
// GetFileName('C:\mydir\myfile.ext') returns 'myfile.ext'
// GetFileName('C:\mydir\') returns ''


154301 (https://learn.microsoft.com/en-us/dotnet/api/system.io.path.getfilename?view=net-7.0)

336699
چهارشنبه 09 آذر 1401, 23:10 عصر
سلام بر دوستان .

من هم یک برنامه همین شکلی نوشتم فقط یکم ناقصه

میخوام بدونم چطوری هر بار که عکس عوض بشه اسم اون عکس هم نکایش داده بشه؟

شما با یک اکانت هم سوال بپرسید به جواب میرسید

نیازی نیست با سه نام کاربری متفاوت یک سوال را بپرسید!

ghasem31372
پنج شنبه 10 آذر 1401, 12:30 عصر
شما با یک اکانت هم سوال بپرسید به جواب میرسید

نیازی نیست با سه نام کاربری متفاوت یک سوال را بپرسید!

جناب استاد چطوری به این نتیجه رسیدی؟:متفکر: