PDA

View Full Version : ادرس دهی عکس



morteza_2009
شنبه 16 مرداد 1389, 16:40 عصر
بازم سلام ...

راستش تو یه برنامه picturebox داریم ... که می خوام در شرایط مختلف عکس های مختلف رو بگیره ...

اینکه چه شرایطی و در چه اندازه و کجا و غیره مهم نیست ... یعنی کدش نوشته شده ... فقط نمی دونم چطور چند تا image رو به picturebox وصل کنم.. تا در شرایط مختلف یکی رو نشون بده ...

اینطور که تا اینجا فهمیدم می شه یه imagelist درست کرد و عکس ها رو توش قرار داد ... دیگه اینور به بعد که چجوری باید عکس اینو به picturebox مرتبط کنم رو نمی دونم ...

راستی چطوری می شه با استفاده از متد fromfile و یه متن که همون ادرس فایل عکسه ... عکسی رو از پوشه خاصی تو خود برنامه لود کرد ؟... منظورم اینه که فرض من ادرس رو بنویسم :

"c:\dff\sds.jpg"

خوب بعد ساخت برنامه و ساخت فایل اجرایی ... تو کامپیوتر دیگه که این ادرس وجود نداره !!!؟؟؟ ... اونجا لود نباید بشه نه ؟... چطور باید عکسی رو تو پوشه خاصی همراه فایل های برنامه قرار بدم ... و ادرس اون رو هم چجوری بدست بیارم .

Mani_rf
شنبه 16 مرداد 1389, 16:54 عصر
ضعف ImageBox در اینه که فقط میتونی توش عکس های هم اندازه را ذخیره کنی، مثلا همه عکس ها باید 32*32 باشند یا همه باید 256*256 باشند در غیر این صورت اندازه عکس ها به اندازه داده شده تغییر میکنه.

برای لود عکس ها از فایل ، خیلی ساده ، یک پوشه به عکس ها اختصاص میدی، بعد همه عکس ها را تو اون میریزی، در زمان اجرا هم به این شکل عمل می کنی :


PictureXox1.Image = Image.FromFile(Application.StartUpPath & "\dff\sds.jpg")

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

Saman_12
شنبه 16 مرداد 1389, 17:09 عصر
از متد Load پیکچر باکس هم میتونی استفاده کنی به این صورت :

PictureBox1.Load("C:\Saman_12.jpg")

nasim bahari
شنبه 16 مرداد 1389, 18:09 عصر
بازم سلام ...

راستش تو یه برنامه picturebox داریم ... که می خوام در شرایط مختلف عکس های مختلف رو بگیره ...

اینکه چه شرایطی و در چه اندازه و کجا و غیره مهم نیست ... یعنی کدش نوشته شده ... فقط نمی دونم چطور چند تا image رو به picturebox وصل کنم.. تا در شرایط مختلف یکی رو نشون بده ...

اینطور که تا اینجا فهمیدم می شه یه imagelist درست کرد و عکس ها رو توش قرار داد ... دیگه اینور به بعد که چجوری باید عکس اینو به picturebox مرتبط کنم رو نمی دونم ...

راستی چطوری می شه با استفاده از متد fromfile و یه متن که همون ادرس فایل عکسه ... عکسی رو از پوشه خاصی تو خود برنامه لود کرد ؟... منظورم اینه که فرض من ادرس رو بنویسم :

"c:\dff\sds.jpg"

خوب بعد ساخت برنامه و ساخت فایل اجرایی ... تو کامپیوتر دیگه که این ادرس وجود نداره !!!؟؟؟ ... اونجا لود نباید بشه نه ؟... چطور باید عکسی رو تو پوشه خاصی همراه فایل های برنامه قرار بدم ... و ادرس اون رو هم چجوری بدست بیارم .

برو حالشو ببر.....




for i as integer = 0 to OpenFileDialog1.FileName.Length - 1
ImageList1.Image.Add(Image.FromFile(OpenFileDialog 1.FileName(i)))
Next i


خب حالا برای استفاده از این تصاویر در کنترل های PicBox و یا لیبل و یا باتن و یا...... می تونی از اندیس اون توی ImageList استفاده کنی.....

موفق باشی

morteza_2009
یک شنبه 17 مرداد 1389, 11:34 صبح
از متد Load پیکچر باکس هم میتونی استفاده کنی به این صورت :

متد معرفی کردی که نمی دونستم ... ولی جواب سوالم رو نمی ده ... هرچند دوست خوبمون تو پست قبلی گفت که چجوری ادرس دهی کنم و حله دی:


برو حالشو ببر.....


کد:
for i as integer = 0 to OpenFileDialog1.FileName.Length - 1
ImageList1.Image.Add(Image.FromFile(OpenFileDialog 1.FileName(i)))
Next i
خب حالا برای استفاده از این تصاویر در کنترل های PicBox و یا لیبل و یا باتن و یا...... می تونی از اندیس اون توی ImageList استفاده کنی.....

موفق باشی


عزیز همه رو گفتی الا یه چیز ... همون اندیس imagelist چجوری باید مقدار دهی و مرتبط با picturebox بشه ؟


.................

ممنون از Mani_rf عزیز ... حالا گرفتم چی شد .:چشمک:

Mani_rf
یک شنبه 17 مرداد 1389, 12:20 عصر
عزیز همه رو گفتی الا یه چیز ... همون اندیس imagelist چجوری باید مقدار دهی و مرتبط با picturebox بشه ؟




PictureBox1.Image = ImageList1.Images(0)

nasim bahari
یک شنبه 17 مرداد 1389, 12:25 عصر
متد معرفی کردی که نمی دونستم ... ولی جواب سوالم رو نمی ده ... هرچند دوست خوبمون تو پست قبلی گفت که چجوری ادرس دهی کنم و حله دی:



عزیز همه رو گفتی الا یه چیز ... همون اندیس imagelist چجوری باید مقدار دهی و مرتبط با picturebox بشه ؟


.................

ممنون از Mani_rf عزیز ... حالا گرفتم چی شد .:چشمک:


سلام دوست عزیز.......

من بنا به درخواست خودتون که خواسته بودین از ImageList استاده کنید. این آموزش رو گذاشتم.....البته دیگر دوستان راه هایی برای لود کردن عکس گذاشتن ....ولی استفاده از ImageList همون چیزیه که خودتون خواستین.....

توجه داشته باشین که از لیست تصویر فقط می توانید در کنترل هایی به کار ببرید که دارای خواص ImageList و ImageIndex باشند........

ابتدا باید خاصیت ImageList کنترل مورد نظر رو برابر ImageList که ایجاد کرده ایم، بکنیم..

Label1.ImageList = ImageList1,

و حال می توانید از ImageIndex استفاده نمایید...

Label1.ImageIndex = 0

موفق باشین.........