PDA

View Full Version : سوال: نمایش عکس های موجود در هاست بوسیله سی شارپ



barman_kian
چهارشنبه 12 تیر 1398, 13:18 عصر
سلام دوستان
من توی یکی از پروژه هام لازم شده تا بتونم یه سری عکس هام که توی هاست هست رو به کاربر نشون بدم
در واقع اگر بتونم به صورت یک گالری عکس این کار رو انجام بدم چه بهتر اگر نه که به صورت تک تک بشه هم فرقی نمی کنه
یکی دو تا سورس کد پیدا کردم که آدرس دایرکتوری رو از ویندوز میگیره و عکس ها رو داخل یک پنل نشون میده ولی نمیدونم چطور میشه این کار رو برای عکس های هاستم انجام بدم
ممنون میشم راهنمایی کنید

نمونه کدی که گفتم :

private void ImagesInFolder()
{
FileInfo FInfo;
// Fill the array (imgName) with all images in any folder
imgName = Directory.GetFiles(Application.StartupPath + @"\Images");
// How many Picture files in this folder
NumOfFiles = imgName.Length;
imgExtension = new string[NumOfFiles];
for (int i = 0; i < NumOfFiles; i++)
{
FInfo = new FileInfo(imgName[i]);
imgExtension[i] = FInfo.Extension; // We need to know the Extension
}
}






private void ShowFolderImages()
{
int Xpos = 8;
int Ypos = 8;
Image img;
Image.GetThumbnailImageAbort myCallback =
new Image.GetThumbnailImageAbort(ThumbnailCallback);
MyProgress.Visible = true;
MyProgress.Minimum = 1;
MyProgress.Maximum = NumOfFiles;
MyProgress.Value = 1;
MyProgress.Step = 1;
string[] Ext = new string [] {".GIF", ".JPG", ".BMP", ".PNG"};
AddControls(NumOfFiles);
for (int i = 0; i < NumOfFiles; i++)
{
switch (imgExtension[i].ToUpper())
{
case ".JPG":
case ".BMP":
case ".GIF":
case ".PNG":
img = Image.FromFile(imgName[i]); // or img = new Bitmap(imgName[i]);
imgArray[i].Image = img.GetThumbnailImage(64, 64, myCallback, IntPtr.Zero);
img = null;
if (Xpos > 432) // six images in a line
{
Xpos = 8; // leave eight pixels at Left
Ypos = Ypos + 72; // height of image + 8
}
imgArray[i].Left = Xpos;
imgArray[i].Top = Ypos;
imgArray[i].Width = 64;
imgArray[i].Height = 64;
imgArray[i].Visible = true;
// Fill the (Tag) with name and full path of image
imgArray[i].Tag = imgName[i];
imgArray[i].Click += new System.EventHandler(ClickImage);
this.BackPanel.Controls.Add(imgArray[i]);
Xpos = Xpos + 72; // width of image + 8
Application.DoEvents();
MyProgress.PerformStep();
break;
}
}
MyProgress.Visible = false;
}

محمد رضا فاتحی
پنج شنبه 13 تیر 1398, 12:12 عصر
اگه عکسهاتون توی پوشه هاسته باید به این صورت نمایش بدین

pictureBox1.Load(@"https://upload.wikimedia.org/wikipedia/commons/thumb/1/19/Flag_of_Iran_in_map.svg/250px-Flag_of_Iran_in_map.svg.png");

barman_kian
پنج شنبه 13 تیر 1398, 14:58 عصر
اگه عکسهاتون توی پوشه هاسته باید به این صورت نمایش بدین

pictureBox1.Load(@"https://upload.wikimedia.org/wikipedia/commons/thumb/1/19/Flag_of_Iran_in_map.svg/250px-Flag_of_Iran_in_map.svg.png");


متشکرم جناب فاتحی
درست متوجه نشدم یعنی از کد بالا (پست اول) استفاده کنم و بعد برای مسیر دهی از روش شما استفاده کنم یا .... ؟؟؟؟!!!

محمد رضا فاتحی
پنج شنبه 13 تیر 1398, 15:06 عصر
کدهای اول برای پیمایش فایلهای ویندوزه
کد من برای نمایش تصویر از آدرس وب توی PictureBox
شما باید با توجه به سیاست و هدف نرم افزارت باید آدرس دهی نسب داشته باشی... مثلا یه پوشه داشته باشی برای تصاویر افراد personal و داخل اون پوشه یه تصویر باشه برای شخص با آی دی 1 ، 1.jpg
حالا آدرس فایلت میشه


www.mydomain.com/personal/1.jpg (http://www.mydomain.com/personal/1.jpg)

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

barman_kian
پنج شنبه 13 تیر 1398, 15:14 عصر
کدهای اول برای پیمایش فایلهای ویندوزه
کد من برای نمایش تصویر از آدرس وب توی PictureBox
شما باید با توجه به سیاست و هدف نرم افزارت باید آدرس دهی نسب داشته باشی... مثلا یه پوشه داشته باشی برای تصاویر افراد personal و داخل اون پوشه یه تصویر باشه برای شخص با آی دی 1 ، 1.jpg
حالا آدرس فایلت میشه

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

باز هم ممنون از لطف تون
ببینید من در واقع میخوام عکس ها پروژه ها رو به کاربرم نمایش بدم
توی برنامه اطلاعات یک سری پروژه هست که برای هر کدام یک پوشه به اسم خودش تو هاست درست کردم و عکس هاش اونجا ذخیره شده حالا میخوام وفتی کاربر روی دکمه عکس ها کلیک می کنه اول دایرکتوری مربوطه نمایش داده بشه که در واقع همه عکس ها رو به صورت کوچیک نمایش میده و بعد هم روی هر کدوم کلیک شد توی فرم جداگانه بزرگ نمایشش بده
بنابراین اول همه دایرکتوری و بعد هم خود عکس به تنهایی
متشکرم

barman_kian
جمعه 14 تیر 1398, 09:51 صبح
باز هم ممنون از لطف تون
ببینید من در واقع میخوام عکس ها پروژه ها رو به کاربرم نمایش بدم
توی برنامه اطلاعات یک سری پروژه هست که برای هر کدام یک پوشه به اسم خودش تو هاست درست کردم و عکس هاش اونجا ذخیره شده حالا میخوام وفتی کاربر روی دکمه عکس ها کلیک می کنه اول دایرکتوری مربوطه نمایش داده بشه که در واقع همه عکس ها رو به صورت کوچیک نمایش میده و بعد هم روی هر کدوم کلیک شد توی فرم جداگانه بزرگ نمایشش بده
بنابراین اول همه دایرکتوری و بعد هم خود عکس به تنهایی
متشکرم

راهنمایی لطفا ...
از اساتید اگر کسی می‌تونه راهنمایی کنه ممنون میشم دریغ نکنه

barman_kian
دوشنبه 17 تیر 1398, 12:23 عصر
دوستان میشه راهنمایی کنید بتونم این مشکل رو حل کنم ، متشکرم

محمد رضا فاتحی
دوشنبه 17 تیر 1398, 12:57 عصر
یکی از کارهایی که میشه کرداستفاده از دیتابیسه
آدرس فایل عکس و عنوانشون رو داخل یه جدول ثبت کنید و بوسیله آدرس طبق کد بالا نمایش بدین به کاربر
.....
البته دیتابیس آنلاین(MySql)