PDA

View Full Version : آدرس عکس



alifarah
شنبه 28 تیر 1393, 18:58 عصر
با سلام
ممنون از سایت خوبتون

من نرم افزارم قابلیت عکس برداری با وبکم رو داره.
چطور میشه همزمان پس از عکس گرفتن ، عکس در محلی دخیره شودم
بدون استفاده از save file dialog
منظورم این است که مانند اینکه بانک اطلاعاتی کنار اگزه است و همیشه نرم افزار آنرا میشناسد و یک آدرس همیشگی داره،
آدرس عکس هم همانگونه باشد ؟

ممنونم

golestan1
شنبه 28 تیر 1393, 19:36 عصر
بهترین راه اینه عکس رو در پیکچر باکس نمایش دهید و در یک تکست باکس نام ان را تایپ کنید و یا اینکه با یک دستور شرطی و حلقه به صورت خودکار نام قید شود

من در اینجا کدی قرار میدم تا عملیات زیر انجام شود

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

Bitmap b = new Bitmap(pictureBox1.Image);
b.Save(Application.StartupPath + @"\pic\" + textBox1.Text + ".jpeg");

alifarah
شنبه 28 تیر 1393, 22:04 عصر
خیلی ممنون لطف کردین

alifarah
شنبه 28 تیر 1393, 22:07 عصر
اصل کار اینکه من در ی تاپیکی گفتم نحوه ارتباط دو فرم چطوریه
بعد یکی از دوستان جواب خوبی داد
حالا من با وبکم در فرم یک عکس میگیرم و هم زمان میخوام پس از عکس کار خودش ذخیره بشه وهمزمان آدرس عکس و خود عکس در فرم دوم نمایش داده شوند
منظورم این است .

میشه راهنمایی کنید !؟

alifarah
شنبه 28 تیر 1393, 22:15 عصر
بعد در ضمن شاید من بخوام 100 تا عکس بگیرم همه به یه نام ذخیره میشن و هیچی دیگه ارور میده
درسته ؟!
یه نام تصادفی نمیشه درست کرد ؟

alifarah
یک شنبه 29 تیر 1393, 23:57 عصر
خواهشا دوستان جواب بدن ؟

aliagamon
دوشنبه 30 تیر 1393, 08:50 صبح
بعد در ضمن شاید من بخوام 100 تا عکس بگیرم همه به یه نام ذخیره میشن و هیچی دیگه ارور میده
درسته ؟!
یه نام تصادفی نمیشه درست کرد ؟
شما یه متغییر به عنوان شمارنده به صورت سراسری تعریف کن ... بعد کد بالا رو به صورت زیر بازنویسی کن :

Bitmap b = new Bitmap(pictureBox1.Image);
b.Save(Application.StartupPath + @"\pic\" + textBox1.Text +i.toString()+ ".jpeg");
i++;

alifarah
دوشنبه 30 تیر 1393, 15:18 عصر
ممنون. اما این هردفه مینویسه pic0
و جایگزین میکنه
اگه حلقه میخواد حلقه رو کجا باید تعریف کنم !؟
ممنونم.

alifarah
دوشنبه 30 تیر 1393, 15:25 عصر
من این حلقه رو نوشتم اما ارورش اینه بینهایت عکس ذخیره میکنه
باید چیکار کنم ؟

for (i = 1; i > 0; i++)
{

Bitmap b = new Bitmap(pictureBox1.Image);
b.Save(Application.StartupPath + @"\pic\" + textBox7.Text + i.ToString() + ".jpeg");


}

aliagamon
دوشنبه 30 تیر 1393, 16:17 عصر
ممنون. اما این هردفه مینویسه pic0
و جایگزین میکنه
اگه حلقه میخواد حلقه رو کجا باید تعریف کنم !؟
ممنونم.
گفتم که ... متغییرو سراسری تعریف کنین ... یعنی داخل کلاس ... نه داخل تابع ...
سراسری تعریف کنین درست میشه ..
نمونه :

int i = 0;
private void button1_Click_1(object sender, EventArgs e)
{
Bitmap b = new Bitmap(pictureBox1.Image);
b.Save(Application.StartupPath + @"\pic\" + textBox1.Text + i.ToString() + ".jpeg");
i++;
}

abbas.oveissi
دوشنبه 30 تیر 1393, 18:03 عصر
ممنون. اما این هردفه مینویسه pic0
و جایگزین میکنه
اگه حلقه میخواد حلقه رو کجا باید تعریف کنم !؟
ممنونم.
اگر نام فایل ها براتون مهم نیست چی باشه،میتونید از Guid استفاده کنید.تقریبا همیشه منحصربفرد هست.اینم نمونه کد هست :
// This code example demonstrates the Guid.NewGuid() method.
using System;

class Sample
{
public static void Main()
{
Guid g;
// Create and display the value of two GUIDs.
g = Guid.NewGuid();
Console.WriteLine(g);
Console.WriteLine(Guid.NewGuid());
}
}

/*
This code example produces the following results:

0f8fad5b-d9cb-469f-a165-70867728950e
7c9e6679-7425-40de-944b-e07fc1f90ae7
*/
میتونید Guid رو به جای نام فایل استفاده کنید.

Ali.hitter
دوشنبه 30 تیر 1393, 18:50 عصر
سلام
خب اسم ها رو عدد ذخیر کن و برای ذخیره ی هر عکس کدی بنویس که نام یا همون شماره ی آخرین عکسو بخونه و + یکش کنه و بذاره به عنوان نام عکس جدید برای ارتباط بین فرم هم از کلاس ها میتونید استفاده کنید یا روش های مختلفی که داره اگه نتونستید بگید تا کد بذارم براتون

alifarah
دوشنبه 30 تیر 1393, 21:24 عصر
دقیقا ! مرسی بچه ها واقعا ممنون دستون درد نکنه