¿ Cómo es que gambas no tenemos un método para eso ?.
¿ Seguro que no existe algo dentro de las funciones internas de gambas ?.
Public Sub Main()
Dim sllaves As New String[]
Dim vvalores As New Variant[]
Dim ususistemas As New Collection
'Añadimos los usuarios y su sistema prefereido
ususistemas.Add("Linux Ubuntu", "Adrian")
ususistemas.Add("Windows", "José")
ususistemas.Add("Linux Mint", "Maria")
ususistemas.Add("MacOS", "Alberto")
ususistemas.Add("OpenSuse", "Antonia")
ususistemas.Add("FreeBSD", "Luis")
vvalores = DevolverValores(ususistemas)
sllaves = DevolverLlaves(ususistemas)
End
Public Function DevolverValores(unacoleccion As Collection) As Variant[]
Dim vvalores As New Variant[]
Dim vvalor As Variant
For Each vvalor In unacoleccion
vvalores.Add(vvalor)
Next
Return vvalores
End
Public Function DevolverLlaves(unacoleccion As Collection) As String[]
Dim sllaves As New String[]
Dim vvalor As Variant
For Each vvalor In unacoleccion
sllaves.Add(unacoleccion.Key)
Next
Return sllaves
End
Dim sllaves As New String[]
Dim vvalores As New Variant[]
Dim ususistemas As New Collection
'Añadimos los usuarios y su sistema prefereido
ususistemas.Add("Linux Ubuntu", "Adrian")
ususistemas.Add("Windows", "José")
ususistemas.Add("Linux Mint", "Maria")
ususistemas.Add("MacOS", "Alberto")
ususistemas.Add("OpenSuse", "Antonia")
ususistemas.Add("FreeBSD", "Luis")
vvalores = DevolverValores(ususistemas)
sllaves = DevolverLlaves(ususistemas)
End
Public Function DevolverValores(unacoleccion As Collection) As Variant[]
Dim vvalores As New Variant[]
Dim vvalor As Variant
For Each vvalor In unacoleccion
vvalores.Add(vvalor)
Next
Return vvalores
End
Public Function DevolverLlaves(unacoleccion As Collection) As String[]
Dim sllaves As New String[]
Dim vvalor As Variant
For Each vvalor In unacoleccion
sllaves.Add(unacoleccion.Key)
Next
Return sllaves
End
No resulta difícil de hacer y es algo que suele ser de utilidad.
Siempre se puede heredar Collection y añadir el método, ¿ no ?.
Saludos