Visual Basic.NET - Arreglo de Objetos

 
Vista:

Arreglo de Objetos

Publicado por JuanLalo (3 intervenciones) el 24/10/2007 08:53:02
Hola amigos, soy nuevo en el ambiente de Visual Basic .net, pero me ha gustado bastante, les dejo una pregunta, ojalá me la puedan resolver.

Cuando tengo una clase con sus atributos, propiedades, metodos y su constructor, como puedo hacer para instanciar un objeto de esa clase pero como arreglo redmiensionable: Ejemplo:

La clase se llama "Punto" y mostrando lo escencial seria de la siguiente manera:
--------
Public Class Punto

Private X as integer
Private Y As Integer

Public Property PosX() As Integer
Get
Return X
End Get
Set(ByVal Value As Integer)
X = Value
End Set
End Property

Public Property PosX() As Integer
Get
Return X
End Get
Set(ByVal Value As Integer)
X = Value
End Set
End Property

Public Sub New()
X = 0
Y = 0
End Sub
End Class
---------

Ahora, si deseo capturar las coordenadas en donde la persona hace click sobre un formulario y guardarlas en un arreglo de la clase Punto, osea, un arreglo de objetos de la clase Punto el cual se bata redimensionando por mas puntos que se hagan en el formulario, al inicializar el objeto como arreglo lo tendria q hacer de la siguiente manera:

--------
Dim objPunto() As Punto = New Punto
--------

La inicialización o instanciación de la clase no es aceptada por el compilador (Visual Studio .NEt 2003), no entiendo como especificarla ya que cada vez que la necesito (en el evento "MouseDown" del Formulario "Form1") la redimensiono de la siguiente forma.

--------
Private Sub Form1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PBDibujo.MouseDown

' NumClicksEnForm guarda la cantidad de Clicks que se hicieron en el formulario
Dim NumClicksEnForm As Integer
NumClicksEnForm = NumClicksEnForm + 1
ReDim objPunto(NumClicksEnForm)
objPunto(NumClicksEnForm).PosX=e.X
objPunto(NumClicksEnForm).PosY=e.Y

End Sub
--------

Como se puede solucionar esto?
Agradeceria que me respondan a la brevedad debido a q estoy varado con este tema, desde ya muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Arreglo de Objetos

Publicado por OliBeer (391 intervenciones) el 24/10/2007 15:46:11
Lo que pasa es que no le puedes poner el New ahí donde lo tienes, más que nada lo que tienes que hacer en este caso es saber el número de Objetos que necesitaras para poderlos Instanciar después, algo asi:

Dim arrParametros(6) As SqlParameter

For i As Integer = LBound(arrParametros) To UBound(arrParametros)
arrParametros(i) = New SqlParameter
Next

Lo que tienes que hacer es instanciar uno por uno, lo que te sugiero es que lo instancies cada vez que ocupes uno nuevo.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Arreglo de Objetos

Publicado por JuanLalo (3 intervenciones) el 24/10/2007 16:28:10
OK Gracias, probare lo que me dices!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Arreglo de Objetos

Publicado por Jhon Stiven Guevara Velasco (2 intervenciones) el 22/03/2012 20:29:34
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
' El arreglo lo defino Tipo ClasePersona sin darle un Tamaño
Dim arregloPersona() As ClasePersona
Dim TamañoArreglo As Integer
TamañoArreglo = 5
'Realizo un ciclo desde 0 hasta el tamaño que quieras
For i = 0 to TamañoArreglo
    ' El ReDim es para Redefinir el Arreglo en este Caso queremos Redefinir el Tamaño de este
    ' El Preserve es para que guarde la Informacion que a sido Ingresada en los demas Espacios del arreglo
    ReDim Preserve arregloPersona(i+1)
    'Se llama al constructor 
    arregloPersona(i) = New ClasePersona()
    'Le asigna un varlo en el Campo "SuID"
    arregloPersona(i).SuID = i
Next
 
MsgBox arregloPersona.Length

Espero que le sirva a alguien ya que esto es hace mas de 5 años xD saludes desde Colombia
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Arreglo de Objetos

Publicado por LOL! (1 intervención) el 21/08/2014 23:17:38
apesear de q han pasado 2 años de la ultima publicación fue extraño pero me sirvió para una compact framework
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Arreglo de Objetos

Publicado por Luis E. Luza (1 intervención) el 05/10/2017 23:14:11
Año 2017 y me sirvió. Muy agradecido
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Arreglo de Objetos

Publicado por Mónica Matte (1 intervención) el 28/04/2019 19:24:07
Estamos en 2019 y el post me ha ayudado.
Agradezco profundamente, en estos tiempos de individualismo crónico, cuando una persona es generosa con su experiencia y conocimientos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Arreglo de Objetos

Publicado por Andres (1 intervención) el 31/08/2022 03:38:40
Excelente! :)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar