ورود

View Full Version : سوال: سوال در مورد تغییر تکست در تکست بوکس vb6



meisambandari
دوشنبه 20 آبان 1387, 02:11 صبح
سلام دوستان
سوالی داشتم که چجور تکست درون تکست بوکسها را با هم جا به جا کنیم مثلا من روی یک فرم 10 تکست بوکس دارم که در هر کدام تکستی نوشته شده است من میخوام که با یک کلیک تکستهای درون این تکست بوکسها با هم جا بجا بشن مثلا تکست 10 بره به تکست 1 و تکست 1 به تکست چار الی آخر حالا اینکار به صورت رندوم اتفاق بیفتد یا غیر رندوم ایرادی ندارد .دوستان راهنمایی کنید . ممنون....

m_vb1386
دوشنبه 20 آبان 1387, 08:33 صبح
يك راهش اينه كه شما كنترل هات رو ارايه كني و با يك حلقه مقادير اولي رو به دومي و دومي رو به سومي و الي اخر بدي و مقدار اخري رو هم به اولي بدي البته بايد قبلش مقدار هاي بعدي رو تو يك متغير ذخيره كني
اگه هم ميخواهي راندوم باشه ابتدا يك ارايه تعريف كن مقاديرت رو توش بريز و بعد بصورت رندوم مقادير يك تا ده بهش بده و اونها رو تو تكس باكسها بريز

meisambandari
دوشنبه 20 آبان 1387, 12:43 عصر
يك راهش اينه كه شما كنترل هات رو ارايه كني و با يك حلقه مقادير اولي رو به دومي و دومي رو به سومي و الي اخر بدي و مقدار اخري رو هم به اولي بدي البته بايد قبلش مقدار هاي بعدي رو تو يك متغير ذخيره كني
اگه هم ميخواهي راندوم باشه ابتدا يك ارايه تعريف كن مقاديرت رو توش بريز و بعد بصورت رندوم مقادير يك تا ده بهش بده و اونها رو تو تكس باكسها بريز
اگه ممکنه با یک پروژه ویبی راهنمایی کنید.ممنون

m_vb1386
دوشنبه 20 آبان 1387, 13:25 عصر
شما ارايه كردن كنترل ها و ارايه رو تو سايت سرچ كنيد حتما به نتيجه ميرسيد

meisambandari
دوشنبه 20 آبان 1387, 15:34 عصر
شما ارايه كردن كنترل ها و ارايه رو تو سايت سرچ كنيد حتما به نتيجه ميرسيد
تو سایت سرچ کردم از مطالب چیزی دسگیرم نشد. اگه با یک پروژه راهنمایی کنید ممنون میشم.

vbhamed
دوشنبه 20 آبان 1387, 16:54 عصر
سلام
10 تا تكست باكس به اسم txt و انديس دار و يك Command روي فرم بزاريد و كد زير رو Paste كنيد




Private Sub Command1_Click()

On Error Resume Next

Dim i%, n%

Randomize Timer

For i = 0 To 9
n = Int(Rnd * 10)
While txt(n).WhatsThisHelpID = 1
n = Int(Rnd * 10)
Wend
txt(i) = txt(n).Tag
txt(n).WhatsThisHelpID = 1
Next

For i = 0 To 9
txt(i).WhatsThisHelpID = 0
Next

End Sub

Private Sub Form_Load()

Dim i%

Randomize Timer

For i = 0 To 9
txt(i) = i + 1
Next

For i = 0 To 9
txt(i).Tag = txt(i)
Next

End Sub

meisambandari
دوشنبه 20 آبان 1387, 17:40 عصر
ممنون از کد
ولی این کد اعداد در تکس بوکسها را جا بجا میکنن. نمیشه کاری کرد که تکستهای درون تکست بوکس با هم جابجا بشن؟

vbhamed
سه شنبه 21 آبان 1387, 06:54 صبح
سلام
تو كد بالا عمدا يك سري عدد براي پر كردن تصادفي تكست باكس ها گذاشته شده بود
كدهاي قسمت Form_Load رو حذف و قسمت Command1_Click رو به شكل زير اصلاح كنيد



Private Sub Command1_Click()

On Error Resume Next

Dim i%, n%

Randomize Timer

For i = 0 To 9
txt(i).Tag = txt(i)
Next

For i = 0 To 9
n = Int(Rnd * 10)
While txt(n).WhatsThisHelpID = 1
n = Int(Rnd * 10)
Wend
txt(i) = txt(n).Tag
txt(n).WhatsThisHelpID = 1
Next

For i = 0 To 9
txt(i).WhatsThisHelpID = 0
Next

End Sub