Clases

Iniciado por TheGhost(Z), 10 Febrero 2011, 19:35 PM

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

TheGhost(Z)

Hola, Alguien sabe como se puede hacer esta clase:


Dim miPerro As New Perro
With miPerro
     .Nombre = "Mario"
     .Raza = "Boxer"
     .Edad = 1
End With
Perros.Agregar(Perro)


La clase perros lo hago sin problema.  lo que no puede hacer es como enviar la clase perro. como hago para que una propiedad de la clase perros reciba como parametro otra clase. :( :(


Edu

Escribe todo el codigo mejor porque no se entendera bien ya q esta la clase Perro y la clase Perros por lo q has escrito

seba123neo

Hola, supongamos que la clase Perro es asi:

Código (vbnet) [Seleccionar]
Public Class Perro

    Private _Nombre As String
    Private _Raza As String

    Public Sub New()
        _Nombre = ""
        _Raza = ""
    End Sub

    Public Property Nombre() As String
        Get
            Return Me._Nombre
        End Get
        Set(ByVal value As String)
            Me._Nombre = value
        End Set
    End Property

    Public Property Raza() As String
        Get
            Return Me._Raza
        End Get
        Set(ByVal value As String)
            Me._Raza = value
        End Set
    End Property
End Class


en el formulario podes tener una lista generica (o tambien una coleccion) del tipo Perro, o sea la collecion va a almacenar objetos de tipo Perro, y despues podes recorrerla y sacar los datos.

Código (vbnet) [Seleccionar]
Public Class Form1

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim vListaPerros As New List(Of Perro)

        Dim vPerro1 As New Perro

        vPerro1.Nombre = "cachito 1"
        vPerro1.Raza = "mestiza 1"
        vListaPerros.Add(vPerro1)

        Dim vPerro2 As New Perro

        vPerro2.Nombre = "cachito 2"
        vPerro2.Raza = "mestiza 2"
        vListaPerros.Add(vPerro2)

        Dim vPerro3 As New Perro

        vPerro3.Nombre = "cachito 3"
        vPerro3.Raza = "mestiza 3"
        vListaPerros.Add(vPerro3)

        For Each perrito As Perro In vListaPerros
            Debug.WriteLine("Nombre del Perro: " & perrito.Nombre)
            Debug.WriteLine("Raza del Perro: " & perrito.Raza)
        Next perrito

    End Sub
End Class


saludos.
La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

TheGhost(Z)

Es una solución, pero no como la quería..

Hasta aquí lo he hecho sin problemas


Dim myPerro As New Perro

myPerro.Cantidad()        'Cantidad de perros en la base de datos
myPerro.Perro(254).Nombre 'Nombre del perro cuyo id es 254
myPerro.Agregar("Pedro","boxer",1) 'Agrega un perro más a la base de datos



Lo que no me gusta es la manera de agregar a un perro. es decir me gustaría cambiar esto:


Dim myPerro As New Perro
myPerro.Agregar("Pedro","boxer",1) 'Agrega un perro más a la base de datos


por este otro que se ve mas bonito:


Dim p As Perro
     .Nombre = "Pedro"
     .Raza= "Boxer"
     .Edad = 1
End With

dim Perros As New Perros
Perros.Agregar(p)




Edu

Estas entreverando todo creo o solo nos dejas una parte del codigo..