Hola quiero mostrar números dentro de un rango establecido (00 al 99 )
Necesito hacer una función que me elimine lo números que se pasen de 99 ? pero que no me deje los texboxes vacíos ? poniendo el ultimo numero del rango si este se pasa del mismo
Result1 = {Num1 + 10, Num1 + 20, Num1 + 30} _
.Distinct().ToArray '
Array.Sort(Result1)
For Each Number As Int32 In Result1
TextBoxCount += 1
TextBoxes(TextBoxCount).Text = Number
Next
Luis
Private Sub Test(sender As Object, e As EventArgs) Handles MyBase.Shown
Dim TextBoxes() As TextBox = _
{TextBox1, TextBox2, TextBox3, TextBox4, TextBox5}
Dim TextBoxCount As Integer = 0
Dim maximum As Short = 99
Dim Result() As Integer = { _
90, _
40, _
50, _
90, _
100, _
125 _
}.Distinct().ToArray
Array.Sort(Result)
For Each Number As Integer In Result
TextBoxes(TextBoxCount).Text = _
If(Not Number > maximum, _
CStr(Number), _
CStr(maximum))
Threading.Interlocked.Increment(TextBoxCount)
Next Number
End Sub
(http://img547.imageshack.us/img547/1326/nfzt.png)
Saludos
Cita de: EleKtro H@cker en 27 Octubre 2013, 12:33 PM
Private Sub Test(sender As Object, e As EventArgs) Handles MyBase.Shown
Dim TextBoxes() As TextBox = _
{TextBox1, TextBox2, TextBox3, TextBox4, TextBox5}
Dim TextBoxCount As Integer = 0
Dim maximum As Short = 99
Dim Result() As Integer = { _
90, _
40, _
50, _
90, _
100, _
125 _
}.Distinct().ToArray
Array.Sort(Result)
For Each Number As Integer In Result
TextBoxes(TextBoxCount).Text = _
If(Not Number > maximum, _
CStr(Number), _
CStr(maximum))
Threading.Interlocked.Increment(TextBoxCount)
Next Number
End Sub
(http://img547.imageshack.us/img547/1326/nfzt.png)
Saludos
Gracias EleKtro siempre tan amable ahora a ver como adapto esto a mi código :) pensaba que con un simple iff se haria jejeje ya te contare como me va..
Luis
Ya me pegare un tiro pronto :)
Public Class Form1
Private Property Result1 As Object
ReadOnly Property Num1 As Int32
Get
Return CInt(TextBox1.Text)
End Get
End Property
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Result1 = {Num1 + 15, Num1 + 25} _
.Distinct().ToArray ' Elimino duplicados
For Each Number As Int32 In Result1
TextBoxCount += 1
TextBox(TextBoxCount).Text = Number
Next
End Sub
Private Sub Test(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Shown
Dim TextBoxes() As TextBox = _
{TextBox1, TextBox2, TextBox3, TextBox4, TextBox5}
Dim TextBoxCount As Integer = 0
Dim maximum As Short = 99
Dim Result1 As Integer = { _
90, _
40, _
50, _
90, _
100, _
125 _
}.Distinct().ToArray
Array.Sort(Result1)
For Each Number As Integer In Result1
TextBoxes(TextBoxCount).Text = _
If(Not Number > maximum, _
CStr(Number), _
CStr(maximum))
Threading.Interlocked.Increment(TextBoxCount)
Next Number
End Sub
Private Function TextBoxCount() As Object
Throw New NotImplementedException
End Function
Private Function TextBox(ByVal p1 As Object) As Object
Throw New NotImplementedException
End Function
End Class
No logro hacer nada :) es en este codigo que quiero hacer las limitaciones de numeros
Public Class Form1
Private TextBoxes As TextBox() = {Nothing}
Private Result1 As Int32(), Result2 As Int32()
ReadOnly Property Num1 As Int32
Get
Return CInt(TextBox1.Text)
End Get
End Property
ReadOnly Property Num2 As Int32
Get
Return CInt(TextBox2.Text)
End Get
End Property
Private Sub Sumar(sender As Object, e As EventArgs) _
Handles Button_Sum.Click
Dim TextBoxCount As Short = -1
TextBoxes = {TextBox3, TextBox4, TextBox5, TextBox6}
Result1 = {Num1 + 15, Num1 + 25} _
.Distinct().ToArray ' Elimino duplicados
Result2 = {Num2 + 30, Num2 + 20} _
.Distinct().ToArray ' Elimino duplicados
Array.Sort(Result1) : Array.Sort(Result2) ' Ordeno los Items
For Each Number As Int32 In Result1
TextBoxCount += 1
TextBoxes(TextBoxCount).Text = Number
Next
For Each Number As Int32 In Result2
TextBoxCount += 1
TextBoxes(TextBoxCount).Text = Number
Next
End Sub
End Class
Vamos Luis te lo he dado todo hecho, no es dificil adaptarlo, te falta poco.
En tu último código no has declarado el valor máximo
Citar Dim maximum As Short = 99
Solo te falta eso y copiar esto otro:
Citar For Each Number As Integer In Result1
TextBoxes(TextBoxCount).Text = _
If(Not Number > maximum, _
CStr(Number), _
CStr(maximum))
Threading.Interlocked.Increment(TextBoxCount)
Next Number
La verdad es que el búcle no requiere ningún cambio, pero puedes escribirlo de esta otra forma:
For Each Number As Int32 In Result1
TextBoxCount += 1
if not Number > maximum then
TextBoxes(TextBoxCount).Text = cstr(number)
else
TextBoxes(TextBoxCount).Text = cstr(maximum)
end if
Next Number
Saludos
Cita de: EleKtro H@cker en 29 Octubre 2013, 14:52 PM
Vamos Luis te lo he dado todo hecho, no es dificil adaptarlo, te falta poco.
En tu último código no has declarado el valor máximo
Solo te falta eso y copiar esto otro:
La verdad es que el búcle no requiere ningún cambio, pero puedes escribirlo de esta otra forma:
For Each Number As Int32 In Result1
TextBoxCount += 1
if not Number > maximum then
TextBoxes(TextBoxCount).Text = cstr(number)
else
TextBoxes(TextBoxCount).Text = cstr(maximum)
end if
Next Number
Saludos
Perfecto gracias EleKtro H@cker te debo una revision a tu coche :)
Luis