PDA

View Full Version : سوال: عدم نمایش عکس در picturebox



mahdidabaghi
شنبه 24 فروردین 1392, 19:46 عصر
سلام خدمت دوستان گرامی
قبل هر چیز از این که سوالم شاید ابتدایی باشه معذرت خواهی میکنم.
من میخوام زمانی که روی دکمه کلیک میکنم picturebox بره ادرسی که به صورت زیر تعریف کردم رو پیدا کنه و عکس مورد نظر رو نشون بده
در این مورد سرچی که انجام دادم کدی به صورت زیر روگیر اوردم:


private void button2_Click(object sender, EventArgs e)
{
pictureBox2.Image = Image.FromFile(Application.StartupPath + "D:\\Cars II\\Hydrangeas.jpg");

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

SHD.NET
شنبه 24 فروردین 1392, 20:20 عصر
سلام. وقتی از Application.startuppath استفاده کردین دیگه چرا درایو D رو آدرسی دهی کردین ؟؟ باید فقط اسم فایلی که همراه نرم افزار هست رو بنویسید.

**موفق باشید**

veniz2008
شنبه 24 فروردین 1392, 20:34 عصر
سلام.
علاوه بر گفته دوستمون همیشه برای اینکه آدرس یک عکس رو از درون پروژه راحت بدست بیارید کافیه عکس رو از درون پروژه drag کنید و بندازید روی فرم. خود ویژوال آدرسش رو برای شما مشخص میکنه. و حتی ساده تر از این میتونید عکس ها رو کنار فایل اجرایی برنامه بذارید و فقط اسم و پسوند عکس رو ذکر کنید.
موفق باشید.

mahdidabaghi
شنبه 24 فروردین 1392, 22:23 عصر
از هر دو بزرگوار ممنونم.
اما پروژه ای که در دست دارم فرم ثبت اون شامل 60 فیلد هست که چهار تای اون ها عکس هستند و این سازمان قصد داره حدود 70/000 رکورد رو ثبت کنه.
و این تصاویر قراره از سیستمهای کاربران و در محلی که هستند در pictureBox نشون داده بشن.
اگه ممکنه من رو راهنمایی بفرمایین کدبالا رو چه تغییری بدمکه تصاویر به صورتی که عرض کردم در PictureBox هانشون داده بشن
ممنون

khokhan
شنبه 24 فروردین 1392, 22:35 عصر
از هر دو بزرگوار ممنونم.
اما پروژه ای که در دست دارم فرم ثبت اون شامل 60 فیلد هست که چهار تای اون ها عکس هستند و این سازمان قصد داره حدود 70/000 رکورد رو ثبت کنه.
و این تصاویر قراره از سیستمهای کاربران و در محلی که هستند در pictureBox نشون داده بشن.
اگه ممکنه من رو راهنمایی بفرمایین کدبالا رو چه تغییری بدمکه تصاویر به صورتی که عرض کردم در PictureBox هانشون داده بشن
ممنون

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

کدهاش هم خیلی آسون انتخاب شده :لبخند::چشمک:

veniz2008
شنبه 24 فروردین 1392, 22:38 عصر
این نرم افزار که قراره 70 هزار رکورد رو ذخیره کنه، تحت شبکه است؟.

mahdidabaghi
شنبه 24 فروردین 1392, 22:48 عصر
سلام در این نمونه کو چک هم می تونید عکس رو درون پوشه ای کنار فاید اجرایی ذخیره کنید وهم بازیابی کنید و هم اینکه با دکمه های قبلی وبعدی پیمایش کنید وهم اینکه حذف کنید

کدهاش هم خیلی آسون انتخاب شده :لبخند::چشمک:
مهندس بابت کدت بسیار ممنون.واقعا که بسیار زیبا بود.
شرمنده که سوالی دیگه هم واسم پیش اومده و این سوال اینه ایا میشه این ادرس عکس ها روبه کریستال ریپورت فهموند؟
یعنی مثلامن تعدادی فیلد تکست رو از دیتابیس بخونم(که یکی از این فیلدها فیلذ ادرس عکس هست) و این ادرس تبدیل به عکس بشه و توی کریستال نشون داده بشه؟
سپاس گزار از شما

mahdidabaghi
شنبه 24 فروردین 1392, 22:50 عصر
این نرم افزار که قراره 70 هزار رکورد رو ذخیره کنه، تحت شبکه است؟.
فعلا که مهندس جون این موضوع رو مطرح نکردن.ولی خودم میخوام این مبحث رو هم پوشش بدم یعنی اره!!!!!!

khokhan
شنبه 24 فروردین 1392, 23:05 عصر
شرمنده که سوالی دیگه هم واسم پیش اومده و این سوال اینه ایا میشه این ادرس عکس ها روبه کریستال ریپورت فهموند؟
یعنی مثلامن تعدادی فیلد تکست رو از دیتابیس بخونم(که یکی از این فیلدها فیلذ ادرس عکس هست) و این ادرس تبدیل به عکس بشه و توی کریستال نشون داده بشه؟
سپاس گزار از شما

با سلام مجدد

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

هم کاملا با سورس کد شرح داده وهم یه نمونه خوب برای ارسال تصویر به کریستال ریپورت گذاشته

شاد شاد :لبخند:

http://www.codeproject.com/Articles/21095/Image-in-Crystal-Reports

mahdidabaghi
شنبه 24 فروردین 1392, 23:17 عصر
با سلام مجدد

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

هم کاملا با سورس کد شرح داده وهم یه نمونه خوب برای ارسال تصویر به کریستال ریپورت گذاشته

شاد شاد :لبخند:

http://www.codeproject.com/Articles/21095/Image-in-Crystal-Reports
شرمندم کردین مهندس
خیلی ممنونم.ولی متاسفانه کدهای سورس اون بصورت وی بی هست و هر کاری کردم نتونستم بازش کنم.میشه تبدیل شده کد به سب شارشو بذارین.
پررویی بنده رو به بزرگواری خودتون بخشید.

veniz2008
شنبه 24 فروردین 1392, 23:28 عصر
فعلا که مهندس جون این موضوع رو مطرح نکردن.ولی خودم میخوام این مبحث رو هم پوشش بدم یعنی اره!!!!!!
در پروژه های تحت شبکه، اگر بخواید آدرس رو ذخیره کنید اونوقت هر کدوم از کلاینت ها که بخواد عکسی رو درون سیستم خودش نمایش بده باید به سیستمی که اون عکس درش ذخیره شده دسترسی پیدا کنه که این احتمال زیاده که چنین اجازه ای از طرف اون سازمان صادر نشه.(بعید میدونم مدیر یا معاون اداره ای اجازه بده که شخصی به سیستمشون وصل بشه!) و همچنین دردسر خوندن عکس از یک سیستم و اوردنش به سیستم مقصد رو هم در نظر بگیرید. یکی دیگه از معایب ذخیره آدرس اینه که ممکنه عکس ها، اهمیت زیادی برای سازمان مورد نظر داشته باشه ولی با این روش هرکسی میتونه عکس ها رو کپی کنه و براحتی واسه خودش ببره و همچنین هر کسی که با سیستم در ارتباطه براحتی میتونه عکس ها رو حذف کنه.
در کل نظر من اینه که برای سیستم کلاینت - سروری از ذخیره خود عکس در دیتابیس استفاده کنید و تنها نکته ای که باید رعایت کنید سایز عکس ذخیره شده در دیتابیس هست. اگر توجه کرده باشید مثلا سازمان سنجش یا هر ارگان دیگه ای برای عکس های کاربران محدودیت هایی رو در نظر میگیرن (مثلا بیشتر از 100 کیلو بایت نباشه) که این کار براحتی قابل پیاده سازی هستش.
موفق باشید.

mahdidabaghi
شنبه 24 فروردین 1392, 23:41 عصر
در پروژه های تحت شبکه، اگر بخواید آدرس رو ذخیره کنید اونوقت هر کدوم از کلاینت ها که بخواد عکسی رو درون سیستم خودش نمایش بده باید به سیستمی که اون عکس درش ذخیره شده دسترسی پیدا کنه که این احتمال زیاده که چنین اجازه ای از طرف اون سازمان صادر نشه.(بعید میدونم مدیر یا معاون اداره ای اجازه بده که شخصی به سیستمشون وصل بشه!) و همچنین دردسر خوندن عکس از یک سیستم و اوردنش به سیستم مقصد رو هم در نظر بگیرید. یکی دیگه از معایب ذخیره آدرس اینه که ممکنه عکس ها، اهمیت زیادی برای سازمان مورد نظر داشته باشه ولی با این روش هرکسی میتونه عکس ها رو کپی کنه و براحتی واسه خودش ببره و همچنین هر کسی که با سیستم در ارتباطه براحتی میتونه عکس ها رو حذف کنه.
در کل نظر من اینه که برای سیستم کلاینت - سروری از ذخیره خود عکس در دیتابیس استفاده کنید و تنها نکته ای که باید رعایت کنید سایز عکس ذخیره شده در دیتابیس هست. اگر توجه کرده باشید مثلا سازمان سنجش یا هر ارگان دیگه ای برای عکس های کاربران محدودیت هایی رو در نظر میگیرن (مثلا بیشتر از 100 کیلو بایت نباشه) که این کار براحتی قابل پیاده سازی هستش.
موفق باشید.
بنده با نظر شما به شدت موافقم و اتفاقا نرم افزار رو به همین صورت تحویل دادم ... ولی حالا دوستان اونجا میگن که ما میخوایم عکس هامون کیفیتشون بالا باشه و با همین کیفیت تو برنامه دیده شه!
من فیلتر 7k رو واسه ذخیره سازی در نطر گرفته بودم و حال اون که دوستان توقع دارن عکسهای 3 مگی رو تو دیتابیس ذخیره کنن!!!!!!!!!!!!!!!!!1
عمق فاجعه جایی که 70000 رکورد داریم و 4 تا عکس 3 مگی (تازه بقیه فیلدها رو هم اصلا حساب نمیکنم).
حالا طرف با این طرز فکر میخواد مثلا بعد وارد کردن 70000 رکورد سر 3 سوت گزارشاش بیاد بالا!!!!!!!!!!!!!!!!!!!!!!!!حجم دیتابیس خم که دیگه ماشاالله میشه!!!!!!!!!!!!!
چه کنم که به این طرز فکر رسیدم.
باز هم اتون ممنونم که توی بحث شرکت میکنید.
اگر دوستان لطفی کنند و مثال کدپروجکت مهندس khokan رو به سیشارپ اینجا بذارن خیلی ممنون میشم

khokhan
شنبه 24 فروردین 1392, 23:53 عصر
فکر کنم با این نمونه تاحدی کارتون راه بیافته:لبخند::چشمک:

veniz2008
یک شنبه 25 فروردین 1392, 00:04 صبح
بنده با نظر شما به شدت موافقم و اتفاقا نرم افزار رو به همین صورت تحویل دادم ... ولی حالا دوستان اونجا میگن که ما میخوایم عکس هامون کیفیتشون بالا باشه و با همین کیفیت تو برنامه دیده شه!
من فیلتر 7k رو واسه ذخیره سازی در نطر گرفته بودم و حال اون که دوستان توقع دارن عکسهای 3 مگی رو تو دیتابیس ذخیره کنن!!!!!!!!!!!!!!!!!1
عمق فاجعه جایی که 70000 رکورد داریم و 4 تا عکس 3 مگی (تازه بقیه فیلدها رو هم اصلا حساب نمیکنم).
حالا طرف با این طرز فکر میخواد مثلا بعد وارد کردن 70000 رکورد سر 3 سوت گزارشاش بیاد بالا!!!!!!!!!!!!!!!!!!!!!!!!حجم دیتابیس خم که دیگه ماشاالله میشه!!!!!!!!!!!!!

قرار نیست هرچی کاربر بگه همون در پروژه اعمال بشه. یک نظر اشتباه به هیچ عنوان نباید در پروژه لحاظ بشه. باد واسشون توضیح بدید و معایب کار رو توضیح بدید.
من یه حساب سرانگشتی کردم اگر هر عکس رو بطور میانگین 100 کیلو فرض کنید کل حجم عکس ها (بدون احتساب رکوردهای دیگه که البته حجم زیادی هم نخواهند داشت) حدود 26 گیگابایت میشه که واسه SQL Server چیزی حساب نمیشه. دوست من الان بحث بر روی جستجو و بازیابی اطلاعات بین میلیون ها رکورد مطرح هست. ولی برای افزایش سرعت میتونید موارد زیر رو در نظر بگیرید:
1. استفاده از ایندکس مناسب برای جداول
2. استفاده از stored procedure ها به جای کوئری نوشتن داخل برنامه.
3. استفاده از کوئری های بهینه (خیلی از مواقع 2 کوئری یک کار رو انجام میدن ولی با تفاوت زمانی بسیار زیاد).
4. روش های بهینه در برنامه نویسی (مثلا خیلی از افراد حجم زیادی از اطلاعات رو به یکباره لود میکنن درصورتیکه چنین داده های زیادی عملا در یک لحظه به درد مخاطب نمیخوره و به جز سنگین کردن برنامه فایده دیگه ای نداره).
5. سخت افزار قدرتمند.
من نظر خودم رو دادم و تصمیم با خود شماست.
موفق باشید.

mahdidabaghi
یک شنبه 25 فروردین 1392, 00:27 صبح
قرار نیست هرچی کاربر بگه همون در پروژه اعمال بشه. یک نظر اشتباه به هیچ عنوان نباید در پروژه لحاظ بشه. باد واسشون توضیح بدید و معایب کار رو توضیح بدید.
من یه حساب سرانگشتی کردم اگر هر عکس رو بطور میانگین 100 کیلو فرض کنید کل حجم عکس ها (بدون احتساب رکوردهای دیگه که البته حجم زیادی هم نخواهند داشت) حدود 26 گیگابایت میشه که واسه SQL Server چیزی حساب نمیشه. دوست من الان بحث بر روی جستجو و بازیابی اطلاعات بین میلیون ها رکورد مطرح هست. ولی برای افزایش سرعت میتونید موارد زیر رو در نظر بگیرید:
1. استفاده از ایندکس مناسب برای جداول
2. استفاده از stored procedure ها به جای کوئری نوشتن داخل برنامه.
3. استفاده از کوئری های بهینه (خیلی از مواقع 2 کوئری یک کار رو انجام میدن ولی با تفاوت زمانی بسیار زیاد).
4. روش های بهینه در برنامه نویسی (مثلا خیلی از افراد حجم زیادی از اطلاعات رو به یکباره لود میکنن درصورتیکه چنین داده های زیادی عملا در یک لحظه به درد مخاطب نمیخوره و به جز سنگین کردن برنامه فایده دیگه ای نداره).
5. سخت افزار قدرتمند.
من نظر خودم رو دادم و تصمیم با خود شماست.
موفق باشید.
از شما دوست عزیز صمیمانه سپاسگزارم
اره اگه تمامی عکسها در دیتابیس ذخیره بشه حجم اون بسیار بالا میره و سلکت گیری هم تا حدودی سنگین میشه.

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

استفاده از stored procedure ها به جای کوئری نوشتن داخل برنامه.
سعی کردم تا جایی که بشه کاجام کارها رو به اس کیو ال عزیز واگذار کنم (با استفاده از Store Procedure و Transaction)

روش های بهینه در برنامه نویسی (مثلا خیلی از افراد حجم زیادی از اطلاعات رو به یکباره لود میکنن درصورتیکه چنین داده های زیادی عملا در یک لحظه به درد مخاطب نمیخوره و به جز سنگین کردن برنامه فایده دیگه ای نداره).
ااین مورد رو هم با صفحه بندی اطلاعات پوشش دادم (مثلا اطلاعات 1000 تا 1000 تا به کاربر نشون داده بشن نه کل اطلاعات به صورت یکجا)
درکل با توجه به دانش ناچیزی که دارم سعی شده موارد فوق توی پروژه گنجونده بشه ولی متاسفانه دید کاربران بسیار پایینه(اونا چهمیدونن دیتابیس چیه یا افزایش حجم اون و ...)
البته مشکلاتی که شما فرمودین رو بنده به اونا گوشزد کردم ولی:گریه:

veniz2008
یک شنبه 25 فروردین 1392, 00:36 صبح
از شما دوست عزیز صمیمانه سپاسگزارم
اره اگه تمامی عکسها در دیتابیس ذخیره بشه حجم اون بسیار بالا میره و سلکت گیری هم تا حدودی سنگین میشه.

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

سعی کردم تا جایی که بشه کاجام کارها رو به اس کیو ال عزیز واگذار کنم (با استفاده از Store Procedure و Transaction)

ااین مورد رو هم با صفحه بندی اطلاعات پوشش دادم (مثلا اطلاعات 1000 تا 1000 تا به کاربر نشون داده بشن نه کل اطلاعات به صورت یکجا)
درکل با توجه به دانش ناچیزی که دارم سعی شده موارد فوق توی پروژه گنجونده بشه ولی متاسفانه دید کاربران بسیار پایینه(اونا چهمیدونن دیتابیس چیه یا افزایش حجم اون و ...)
البته مشکلاتی که شما فرمودین رو بنده به اونا گوشزد کردم ولی:گریه:
اگر تمام این موارد رو رعایت کرده باشید جای نگرانی وجود نداره.
یه ایندکس خوب یعنی سرعت فوق العاده در پیدا کردن رکورد مورد نظر (البته شاید برای 70 هزار رکورد ملموس نباشه).
در مورد paging هم که خودتون فرمودید (فقط به نظرم 1000 تا 1000 تا خیلی زیاد باشه و بهتره این تعداد رو به زیر 100 تا کاهش بدید. یا شایدم عدد 1000 رو من باب مثال گفتید).
دانش همه ما کمه. من هر روز مطلب جدید یاد میگیرم و یاد این جمله می افتم : "باید زیاد مطالعه کنید تا بدانید که هیچ نمیدانید".
واستون آرزوی موفقیت میکنم.

mahdidabaghi
یک شنبه 25 فروردین 1392, 00:41 صبح
فکر کنم با این نمونه تاحدی کارتون راه بیافته:لبخند::چشمک:
سپاس فراوان مهندس

mahdidabaghi
یک شنبه 25 فروردین 1392, 00:45 صبح
اگر تمام این موارد رو رعایت کرده باشید جای نگرانی وجود نداره.
یه ایندکس خوب یعنی سرعت فوق العاده در پیدا کردن رکورد مورد نظر (البته شاید برای 70 هزار رکورد ملموس نباشه).
در مورد paging هم که خودتون فرمودید (فقط به نظرم 1000 تا 1000 تا خیلی زیاد باشه و بهتره این تعداد رو به زیر 100 تا کاهش بدید. یا شایدم عدد 1000 رو من باب مثال گفتید).
دانش همه ما کمه. من هر روز مطلب جدید یاد میگیرم و یاد این جمله می افتم : "باید زیاد مطالعه کنید تا بدانید که هیچ نمیدانید".
واستون آرزوی موفقیت میکنم.
تشکر میکنم.در کل واسه طراحی نرم افزار باید تمام جوانب رو در نظر داشت و این یک سوپاپ اطمینان خوبه ...

دانش همه ما کمه. من هر روز مطلب جدید یاد میگیرم و یاد این جمله می افتم : "باید زیاد مطالعه کنید تا بدانید که هیچ نمیدانید".
شما و سایر دوستان گل برنامه نویس اساتید بنده هستید.
به امید موفقیتهای هر چه بیشتر بروبچه های مصمم و دوست داشتنی برنامه نویس

mahdidabaghi
یک شنبه 01 اردیبهشت 1392, 09:48 صبح
فکر کنم با این نمونه تاحدی کارتون راه بیافته:لبخند::چشمک:
سلام مجدد و شرمنده از مزاحمت دوباره
من امروز داشتم برنامه رو تست میکردم و چندتا عکس به صورت رندم انتخاب کردم تااینکه برنامه به عکسی که اینجا قرار میدم گیر داد.اساتید میشه بنده رو راهنمایی کنن علت چیه؟
میگه دسترسی به عکس غیر مجازه در صورتی که هیچ فیلتری واسه این کار روی سیستم وجود نداره
ممنون از شما

mahdidabaghi
یک شنبه 01 اردیبهشت 1392, 11:16 صبح
دوستان و اساتید.توی نت و توی همین فروم سرچ زدم و چندتا نمونه پیدا کردم ولی اون چیزی که مد نظرم هست رو پیدا نکردم.
هدف من اینه توی کریستال دو تا ادرس عکس گرفته بشه و به دو تا عکس تبدیل شه.
سپاسگزار میشم کمکم کنید.

mahdidabaghi
یک شنبه 01 اردیبهشت 1392, 12:46 عصر
اساتید نظری ندارن؟
توی نت این سمپل رو هم پیدا کردم که ادرس یه عکس رو میگیره و عکس مورد نظر رو توی کریستال نشون میده.
حالا میشه از عزیزان بفرمایند چطور میتونم این سمپل رو تغییر داده و دو تا ادرس عکس رو به کریستال فرستاده و هر دو توی کریستال نشون بدم؟

mahdidabaghi
دوشنبه 02 اردیبهشت 1392, 00:12 صبح
یعنی تا حالا یه نفر هم واسش پیش نیومده که بیشتر از یک ادرس عکس رو توی کریستال نشون بده؟:گریه:
لطفا اگه کسی انجام داده یه راهی جلوی من قرار بده
ممنون