" no se controlo nulreferenceExection " ??????

Iniciado por luis456, 19 Octubre 2013, 13:45 PM

0 Miembros y 1 Visitante están viendo este tema.

luis456

Hola vuelvo al ataque :)

Estoy tratando que los texbox que reciben los resultados de unas ecuaciones matematicas no permitan mostrar numeros que no esten dentro de determinado rango y probando con este pedazo de codigo me salta este error  " no se controlo nulreferenceExection "


Tambien me gustaria saber como no dejar el texbox vacio  mostrando el ultimo numero dentro del rango establecido :)


  Private Sub TextBox7_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox7.TextChanged
        If Val(Me.texbox7.tex) < o Or Val(Me.texbox7.tex) > 20 Then
        End If
    End Sub 


Luis





Que tu sabiduria no sea motivo de Humillacion para los demas

Eleкtro

#1
La excepción segúramente es porque estás usando una "O" de Oviedo en lugar de un Cero  :¬¬

PD: (ya estamos de nuevo usando los wrappers de las funciones de vb... (VAL) ¿no hay manera de cambiar eso he? xD)






Código (vbnet) [Seleccionar]
dim MIN as integer = 0
dim MAX as integer = 100

Private Sub TextBox7_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) _
Handles TextBox7.TextChanged

 select case cint(sender.text)

   case not MIN to MAX:sender.text = cstr(MAX)

 end Select

End Sub  


el código lo he escrito al vuelo, si el número no está en el rango MIN-MAX entonces se escribe el valor MAX en el textbox, creo que es lo que querías hacer

fíjate lo facil que era

un saludo!








luis456

Cita de: EleKtro H@cker en 19 Octubre 2013, 15:31 PM
La excepción segúramente es porque estás usando una "O" de Oviedo en lugar de un Cero  :¬¬

PD: (ya estamos de nuevo usando los wrappers de las funciones de vb... (VAL) ¿no hay manera de cambiar eso he? xD)






Código (vbnet) [Seleccionar]
dim MIN as integer = 0
dim MAX as integer = 100

Private Sub TextBox7_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) _
Handles TextBox7.TextChanged

 select case cint(sender.text)

   case not MIN to MAX:sender.text = cstr(MAX)

 end Select

End Sub  


el código lo he escrito al vuelo, si el número no está en el rango MIN-MAX entonces se escribe el valor MAX en el textbox, creo que es lo que querías hacer

fíjate lo facil que era

un saludo!

Gracias por tu ayuda :)

lo recien acabo de probar y solo me pone el el texbox el numero maximo jejej haciendo varios calculos para probar pero siempre me pone el mismo numero el codigo que estoy haciendo para las pruebas es el que me diste el otro dia

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

   



Luis



Que tu sabiduria no sea motivo de Humillacion para los demas