PDA

View Full Version : انتخاب تصا دفی یک PictureBox از بین چند PictureBox



akbar_online
دوشنبه 07 بهمن 1387, 01:49 صبح
در فرمی که 12 تا PictureBox موجود می باشد می خوام به طور تصادفی یکی از این PictureBoxها انتخاب بشه چیکار باید کنم. با تشکر

MohsenPS
دوشنبه 07 بهمن 1387, 06:13 صبح
سلام ،

PictureBoxها رو در یک آرایه مثل PictureBoxes تعریف کنید :

Dim PictureBoxes(11) As PictureBox

بعد از این که عناصر آرایه رو روی فرم قرار دادید می‌تونید برای انتخاب تصادفی یکی از اونها ، اندیسش رو به شکل زیر محاسبه کنید :


Dim SelectedIndex As Integer = Math.Floor(12 * Rnd())

mostafaaa
دوشنبه 07 بهمن 1387, 09:29 صبح
سلام دوست من
البته برای تولید اعداد تصادفی اگه از تابع RND استفاده نکنید بهتره!! دلیلش رو هم میتونید با چندین بار اجرا کردن برنامتون بفهمید. چون این تابع با استفاده از یک الگوریتم ریاضی اعداد (ظاهراً) تصادفی ایجاد میکنه ، پس از هر بار اجرای مجدد این تابع خروجی یکسانی خواهیم داشت.
این هم پیشنهاد MSDN :

Because the Random statement and the Rnd function start with a seed value and generate numbers that fall within a finite range, the results may be predictable by someone who knows the algorithm used to generate them. Consequently, the Random statement and the Rnd function should not be used to generate random numbers for use in cryptography.
به جای این تابع میتونید از این استفاده کنید :

Dim RNDM As New Random
Dim SelectedIndex As Integer = RNDM.Next(12)
یا علی