PDA

View Full Version : سوال: ایجاد تکست بیشتر



hr0694
سه شنبه 29 شهریور 1390, 15:34 عصر
سلام

من وقتی تعداد تکستهام در فرم از 221 بیشتر میشه برنامه این ارور رو میده

Reached limit: cannot create any more controls for this form

چکار کنم تعداد تکستها از 221 تا هم بیشتر بشه

setroyd
سه شنبه 29 شهریور 1390, 15:53 عصر
با ارایه بندی به صورت load کردن . شما باید در محیط کد نویسی این کارو بکنی در محیط طراحی نمیشه چون محدود هست .

setroyd
سه شنبه 29 شهریور 1390, 16:33 عصر
Private Sub Form_Load()
Static c As Integer
Static b As Integer
Text1(0).Width = 200
Text1(0).Height = 50
Text1(0).Left = 0
Text1(0).Top = 0
For a = 1 To 700
b = b + 1
If a Mod 50 = 0 Then
c = c + 1
b = 0
End If
Load Text1(a)
With Text1(a)
.Width = 200
.Height = 50
.Text = "T"
.Visible = True
.Left = .Width * b
.Top = .Height * c
End With
Next a
End Sub
یک تکست باکس بزار رو فرم و index رو 0 بزار و برنامه رو اجرا کن .

farboodj1375
سه شنبه 29 شهریور 1390, 16:47 عصر
سلام.
فکر کنم اگه تکست باکس هات رو آرایه کنی مشکل حل بشه.(یعنی مثلا اسم 10 تا تکست باکس رو یکی کنی با ایندکس های متفاوت)
امتحان کن نتیجه رو بگو.

setroyd
سه شنبه 29 شهریور 1390, 17:04 عصر
بله با ارایه میشه حتی در محیط طراحی .

hr0694
چهارشنبه 30 شهریور 1390, 02:57 صبح
شما میگید با آرایه بندی اینکار رو میشه کرد که تعداد تکستها رو زیاد کرد حالا کد این چی میشه مثلاً اگه تکست 1 شد "ا" بعد تکست 2 با ایندکس 0 بشه "ب" و تکست 2 با ایندکس 1 بشه "پ" و تکست 2 با ایندکس 2 بشه "ت" کدش رو باید چطوری بنویسم

setroyd
چهارشنبه 30 شهریور 1390, 04:44 صبح
caption رو بهش chr بده از حلقه که از یکجا شروع به شمارش کنه و به نوشته تبدیل بشه چون تعداد کاراکترها 255 هستند و حلقه 700 تا هست .

hr0694
چهارشنبه 30 شهریور 1390, 05:05 صبح
دوست عزیز من زیاد وارد نیستم در برنامه نویسی اگه میشه دقیقا توضیح دهید و اون کدی رو هم که در پست 5 خواستم برام بنویسید

setroyd
چهارشنبه 30 شهریور 1390, 15:27 عصر
Private Sub Form_Load()
Static c As Integer
Static b As Integer
Text1(0).Width = 200
Text1(0).Height = 50
Text1(0).Left = 0
Text1(0).Top = 0
For a = 1 To 701
keyasci = keyasci + 1
b = b + 1
If keyasci Mod 26 = 0 Then keyasci = 0
If a Mod 26 = 0 Then
c = c + 1
b = 0
End If
Load Text1(a)
With Text1(a)
.Width = 200
.Height = 50
.Text = Chr(97 + keyasci)
.Visible = True
.Left = .Width * b
.Top = .Height * c
End With
Next a
Me.Width = 27 * Val(Text1(0).Width)
Me.Height = 29 * Val(Text1(0).Height)
End Sub

برات درست کردم ببین همونه که میخوای