ورود

View Full Version : کمک در مورد بارگذاری 300 عکس



sarmad
شنبه 15 بهمن 1384, 01:30 صبح
سلام دوستان

من میخوام که حدود 300 عکس رو بارگذاری کنم و استفاده از listimage رو انتخاب کردم

اما حالا که میخوام از حلقه استفاده کنم و picturebox ها رو بارگذاری کنم نمیتونم

چون picturbox ها رو نتونستم به صورت آرایه یا همون index تعریف کنم

مثال

dim i as integer

for i=1 to 300
picturebox(i).image=listimage1.images(i)end


اگر دوستان نظری دارن

ممنون میشم

حامد مصافی
شنبه 15 بهمن 1384, 02:36 صبح
فقط یک Picturebox کافیه
آرایه رو از نوع system.drawing.bitmap تعریف کن و در حلقه بارگذاریشون کن
و هر کدوم که لازم شد در Picturebox نشون بده

در ضمن اصول استفاده بهینه از حافظه رو هم در نظر بگیرید (رم کامپیوتر کاربر که مال شما نیست)
بهتره در هر لحظه فقط تصاویری رو که به کاربر نشون میدی لود کرده باشی

niloufar
شنبه 15 بهمن 1384, 10:42 صبح
فقط یک Picturebox کافیه
آرایه رو از نوع system.drawing.bitmap تعریف کن و در حلقه بارگذاریشون کن
و هر کدوم که لازم شد در Picturebox نشون بده

در ضمن اصول استفاده بهینه از حافظه رو هم در نظر بگیرید (رم کامپیوتر کاربر که مال شما نیست)
بهتره در هر لحظه فقط تصاویری رو که به کاربر نشون میدی لود کرده باشی
حرف آقا حامد کاملا منطقی است.
به هر حال از ControlَArray هم میتونید استفاده کنید
بازم به قول آقا حامد مواظب رم باشید.

sarmad
یک شنبه 16 بهمن 1384, 02:52 صبح
ممنون

ببینید عزیزان من باید 300 تا picturebox رو با 300 تا عکس بارگذاری کنم


حالا باید دنبال راهی باشم که این کا رو به صورت دستی انجام ندم و در ضمن فرم رو هم سنگین

نکنم به همین خاطر خواستم از حلقه استفاده کنم اما picturebox خاصیت index رو نداره

باز هم ممنون

niloufar
یک شنبه 16 بهمن 1384, 13:27 عصر
ممنون

ببینید عزیزان من باید 300 تا picturebox رو با 300 تا عکس بارگذاری کنم


حالا باید دنبال راهی باشم که این کا رو به صورت دستی انجام ندم و در ضمن فرم رو هم سنگین

نکنم به همین خاطر خواستم از حلقه استفاده کنم اما picturebox خاصیت index رو نداره

باز هم ممنون
1- وجود حلقه ربطی به عدم سنگینی فرمها نداره
2- اگه می خوای هر کنترلی آرایه بشه، باید در کد نویسی یه آرایه از نوع اون کنترل تعریف کنی

sarmad
یک شنبه 16 بهمن 1384, 13:42 عصر
عزیزان بنده از این استفاده کردم ببینید خوبه؟


For i As Integer = 0 To 299
DirectCast(Panel1.Controls(i), PictureBox).Image = ImageList1.Images(i)
Next

niloufar
یک شنبه 16 بهمن 1384, 14:03 عصر
Dim a(10) As PictureBox
Dim i As Integer = 0
For Each b As PictureBox In a
b = New PictureBox
b.Size = New Size(30, 30)
b.Location = New Point(50, i * 50)
b.Image = PictureBox1.Image
Me.Controls.Add(b)
i += 1
Next

sarmad
یک شنبه 16 بهمن 1384, 21:49 عصر
ممنون

این راه هم راه جالبی هست

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

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

به هرحال ممنون